android实时从资产中读取文件

时间:2017-04-25 19:26:02

标签: android assets android-file

我想从资源中读取文本文件的最后一行并获取我刚刚添加的新数据,所以我尝试使用处理程序但仍然得到相同的结果。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    handler = new Handler();
    handler.postDelayed(runnable, 5000);
}

private Runnable runnable = new Runnable() {
    @Override
    public void run() {
        try {
            String lastLine = "";
            Context context = getApplicationContext();

            BufferedReader br = new BufferedReader(new InputStreamReader(context.getAssets().open("kinect_gesture.txt")));
            String sCurrentLine;

            while ((sCurrentLine = br.readLine()) != null) {
                System.out.println(sCurrentLine);
                lastLine = sCurrentLine;
            }

            TextView txt = (TextView)findViewById(R.id.gesture);
            txt.setText(lastLine);
        }catch( java.io.FileNotFoundException e ) {
            e.printStackTrace();
        } catch( java.io.IOException e ) {
            e.printStackTrace();
        }

        handler.postDelayed(this, 5000);
    }
};

有没有办法在运行app时从文本文件中获取新数据?

1 个答案:

答案 0 :(得分:0)

  

有没有办法在运行app时从文本文件中获取新数据?

不,因为那不是文本文件。这是一种资产。资产在运行时是只读的。应用程序运行时它不会更改。要更改资产,请重新构建并重新部署应用。