Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
连续保存并自动增加字符串值到文件-Android_Android_String_File_Save_Auto Increment - Fatal编程技术网

连续保存并自动增加字符串值到文件-Android

连续保存并自动增加字符串值到文件-Android,android,string,file,save,auto-increment,Android,String,File,Save,Auto Increment,我有将字符串保存到文件的代码。问题是字符串不断变化(因为它们是传感器值),但字符串只保存一次,然后似乎会在关闭和打开后删除文件,并在新文件中只打印一个值。我需要它将每个值保存到同一个文件中,同时自动递增以避免丢失任何数据 这是我的密码: 更新:我已将此代码更新为工作版本。代码现在将字符串保存到文件中,然后每次更新文件。感谢@Sergii的帮助 @Override public void onCreate(Bundle savedInstanceState) { super.onCr

我有将字符串保存到文件的代码。问题是字符串不断变化(因为它们是传感器值),但字符串只保存一次,然后似乎会在关闭和打开后删除文件,并在新文件中只打印一个值。我需要它将每个值保存到同一个文件中,同时自动递增以避免丢失任何数据

这是我的密码:

更新:我已将此代码更新为工作版本。代码现在将字符串保存到文件中,然后每次更新文件。感谢@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);

    }
 }
@覆盖
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.demo\u opengl\u acc);
getActionBar().setTitle(R.string.title\u demo\u加速度计);
viewText=(TextView)findViewById(R.id.text);
renderer=新的OpenGLRenderer();
最终GLSurfaceView视图=(GLSurfaceView)findViewById(R.id.gl);
view.setRenderer(渲染器);
}
@凌驾
接收到公共无效数据(TiSensor传感器,字符串文本){
if(t加速度计传感器的传感器实例){
试一试{
缓冲写入程序=
新的BufferedWriter(新的FileWriter(“/sdcard/test.txt”,true));
作者:写(文本);
writer.close();
}捕获(IOE异常){
e、 printStackTrace();
}
试一试{
PrintWriter out=新的PrintWriter(新的BufferedWriter(新的FileWriter(“test”,true));
out.println(文本);
out.close();
}捕获(IOE异常){
//这里有错误消息或其他。。。
}
}
最终t加速度计传感器accSensor=(t加速度计传感器)传感器;
float[]value=accSensor.getData();
设置旋转(值);
viewText.setText(文本);
}
}
我希望能够打开该文件并查看所有值

谢谢。

新的FileWriter(“/sdcard/acvalues.txt”,true)

参数append确定文件是否已打开并附加到,还是刚刚打开并覆盖


另外:

非常感谢!!!:D与另一个问题的链接有我所需要的完美代码。它现在使用数据更新文件,而不删除。再次感谢。