所以我正在将数据(纬度和经度)写入Arduino项目的SD卡。我想写KML文件的标题(存储GPS数据)。我有两个dataFile.println命令(如下所示)。我可以注释掉其中一行,然后另一行将正确写入我的SD卡。但是如果我有这两行,那么dataFile将为false(我假设它将为null?)并且下面的两行都不会写入SD卡。我究竟做错了什么?
File dataFile = SD.open(GPS_FILE, FILE_WRITE);
if (dataFile)
{
if (total == 0)
{
//Write header
dataFile.println("<\?xml version=\"1.0\" encoding=\"UTF-8\"\?>"); //This line (by itself) will write correctly
dataFile.println("<kml xmlns=\"http://www.opengis.net/kml/2.2\">"); //This line (by itself) will write correctly
}
您可以在此链接中查看项目代码:My project code
答案 0 :(得分:0)
试试这个:
File dataFile = SD.open("log.txt", FILE_WRITE);
if (dataFile) {
dataFile.println(str);
dataFile.close();
Serial.println(str);
}
我没有看到你关闭文件......