第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

EditView 只顯示文本文件的最后一行

EditView 只顯示文本文件的最后一行

Qyouu 2023-04-26 15:07:06
我的應(yīng)用程序?qū)⒍嘈形谋颈4鍱ditView到一個文本文件中,但問題是如果我重新啟動我的應(yīng)用程序,只會恢復(fù)最后一行。(也許也有可能是FileOutputStreamonly保存了最后一行,我不確定ˉ_(ツ)_/ˉ)這是我的代碼:private static final String TAG = "EditDataActivity";public static String Textfile = "test.txt";private Button btnSave,btnDelete;private EditText editable_item;EditText Zutaten, Zubereitung;DatabaseHelper mDatabaseHelper;private String selectedName;private int selectedID;@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.edit_data_layout);    btnSave = (Button) findViewById(R.id.btnSave);    btnDelete = (Button) findViewById(R.id.btnDelete);    editable_item = (EditText) findViewById(R.id.editable_item);    mDatabaseHelper = new DatabaseHelper(this);    Zutaten = (EditText)findViewById(R.id.editText4);    Zubereitung = (EditText)findViewById(R.id.editText2);    Zutaten.addTextChangedListener(new TextWatcher() {        @Override        public void beforeTextChanged(CharSequence s, int start, int count, int after) {        }        @Override        public void onTextChanged(CharSequence s, int start, int before, int count) {        }        @Override        public void afterTextChanged(Editable s) {            try{                EditText test = (EditText)findViewById(R.id.editable_item);                String testText = test.getText().toString();                String Textfile2 = testText + ".txt";                EditText field = (EditText)findViewById(R.id.editText4);                String text = field.getText().toString();                FileOutputStream fos = openFileOutput(Textfile2, Context.MODE_PRIVATE);                fos.write(text.getBytes());                fos.close();            }catch (IOException e){                System.out.println("Error");            }        }    });完全希望你能幫助我 :) 謝謝!
查看完整描述

1 回答

?
慕勒3428872

TA貢獻1848條經(jīng)驗 獲得超6個贊

做就是了

while ((test = reader.readLine()) != null) {
                Test.setText(Test.getText()+"\n" + test);
            }

當你只有 setText(test) 時,它會在每次循環(huán)運行時替換編輯文本中的文本,但你必須將新文本附加到最后一行。更好的方法是先創(chuàng)建 String,然后將其設(shè)置為 EditText,因為這樣可以提高性能。

StringBuilder str = new StringBuilder();
while((test = reader.readLine()) != null)
    str.append('\n' + test);
Test.setText(str.toString());

希望這能解決您的問題。


查看完整回答
反對 回復(fù) 2023-04-26
  • 1 回答
  • 0 關(guān)注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號