0

我有 3 个不同的类,1 个监视加速度计数据,1 个跟踪 GPS,一个用于写入文件。

我正在使用此代码写入加速和 GPS 类中的文件:

全球定位系统

file.write(Latitude + "," + Longitude);

加速

file.write(sensorEvent.values[0] + ", " + sensorEvent.values[1] + ", " + sensorEvent.values[2]);

转到文件类中的 write 方法;

public void write(String message) {
    try {
        if (out == null) {
            FileWriter datawriter = new FileWriter(file);
            out = new BufferedWriter(datawriter);
        }
        if (file.exists()) {
            out.append(message);
            out.flush();

        }
    } catch (IOException e) {
        Log.e("Error", "fail to write file");
    }
}

我遇到的问题是它只写了一行加速度值,没有 GPS。

如何编写包含加速度和 GPS 值的行,并将这些值写入同一个文件。

4

2 回答 2

4

new FileWriter(file) 创建一个新的空文件,所以你只写了最后一行,之前的所有行都被删除了。您应该将第二个参数 append=true 添加到 FileWriter 构造函数

FileWriter datawriter = new FileWriter(file,true);
于 2012-11-02T12:43:48.080 回答
2

您可以将两个类的输出连接到一个字符串并将其传递给您的写入函数:

myString = yourGpsClassExecute
myString += yourAccelExecute
write(myString)
于 2012-11-02T12:45:47.410 回答