我有将字符串保存到文件的代码。问题是String不断变化(因为它们是传感器值),但字符串只保存一次,然后似乎删除文件一旦关闭和打开,新的文件只打印一个值。我需要它将每个值保存到同一个文件,同时自动递增以避免丢失任何数据。
这是我的代码:
更新:我已将此代码更新为工作版本。代码现在将字符串保存到文件中,然后每次更新文件。感谢@Sergii的帮助!
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.demo_opengl_acc);
getActionBar().setTitle(R.string.title_demo_accelerometer);
viewText = (TextView) findViewById(R.id.text);
renderer = new OpenGLRenderer();
final GLSurfaceView view = (GLSurfaceView) findViewById(R.id.gl);
view.setRenderer(renderer);
}
@Override
public void onDataRecieved(TiSensor<?> sensor, String text) {
if (sensor instanceof TiAccelerometerSensor) {
try {
BufferedWriter writer =
new BufferedWriter(new FileWriter("/sdcard/test.txt", <> true));
writer.write(text);
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
try {
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("test", true)));
out.println(text);
out.close();
} catch (IOException e) {
//error message here or whatever...
}
}
final TiAccelerometerSensor accSensor = (TiAccelerometerSensor) sensor;
float[] values = accSensor.getData();
renderer.setRotation(values);
viewText.setText(text);
}
}
我希望能够打开文件并查看所有值。
感谢。
答案 0 :(得分:0)
new FileWriter("/sdcard/acvalues.txt", true)
http://developer.android.com/reference/java/io/FileWriter.html#FileWriter(java.io.File, boolean)
参数append确定文件是否被打开并附加到或只是打开和覆盖。