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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

追加到android中的文本文件

追加到android中的文本文件

30秒到達(dá)戰(zhàn)場 2024-01-28 16:29:14
我試圖附加到一個(gè)從空開始的文本文件,每次addStudent()調(diào)用該方法時(shí),它都會(huì)student.toString()向該文件添加一行。我似乎沒有遇到任何異常,但由于某種原因,在方法調(diào)用之后,文件仍然為空。這是我的代碼。public void addStudent() {        Student student = new Student();        EditText fName = findViewById(R.id.first_name);        EditText lName = findViewById(R.id.last_name);        EditText studentGpa = findViewById(R.id.gpa);        String firstName = String.valueOf(fName.getText());        String lastName = String.valueOf(lName.getText());        String gpa = String.valueOf(studentGpa.getText());        if(firstName.matches("") || lastName.matches("") || gpa.matches("")) {            Toast.makeText(this, "Please make sure none of the fields are empty", Toast.LENGTH_SHORT).show();        } else {            double gpaValue = Double.parseDouble(gpa);            student.setFirstName(firstName);            student.setLastName(lastName);            student.setGpa(gpaValue);            try {                FileOutputStream fos = openFileOutput("students.txt",  MODE_APPEND);                OutputStreamWriter osw = new OutputStreamWriter(fos);                osw.write(student.toString());                osw.flush();                osw.close();            } catch(FileNotFoundException e) {                e.printStackTrace();            } catch (IOException e) {                e.printStackTrace();            }        }    }這里可能有什么問題?文件students.txt本身位于assets文件夾中
查看完整描述

2 回答

?
陪伴而非守候

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超8個(gè)贊

問題可能在于手機(jī)上不存在“資產(chǎn)”目錄。所以如果我理解正確的話你可能檢查了錯(cuò)誤的文件。



查看完整回答
反對(duì) 回復(fù) 2024-01-28
?
動(dòng)漫人物

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超10個(gè)贊

What might be the problem here? The file students.txt itself is located in assets folder.

如果它位于資產(chǎn)文件夾中,那么您應(yīng)該使用 AssetsManager 打開它的輸入流。資產(chǎn)文件夾中的文件是只讀的,因此嘗試寫入它們是沒有意義的。

FileOutputStream fos = openFileOutput("students.txt",  MODE_APPEND);

這將在您的應(yīng)用程序的私有內(nèi)存中創(chuàng)建一個(gè)文件。代碼看起來沒問題。但嘗試使用文件管理器或其他應(yīng)用程序在手機(jī)上查找該文件是沒有意義的,正如所說的那樣,該文件只是您應(yīng)用程序的私有內(nèi)部存儲(chǔ)器。

您使用“studends.txt”的相對(duì)路徑,現(xiàn)在您不知道該文件所在的位置。

那么該文件位于 指示的路徑中getFilesDir()。

您也可以使用完整路徑

 File file = new File(getFilesDir(), "students.txt");

然后打開一個(gè) FileOutputStream

FileOutputStream fos = new FileOutputStream(file);


查看完整回答
反對(duì) 回復(fù) 2024-01-28
  • 2 回答
  • 0 關(guān)注
  • 204 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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