मेरे पास एक ऐप है जो उपयोगकर्ता द्वारा फ़ाइल (आंतरिक स्टोरेज) डेटा इनपुट में सहेजता है और स्टार्टअप पर यह फ़ाइल लोड करता है और सामग्री दिखाता है। मुझे पता होगा: मुझे अपनी फाइल (data.txt) कहां मिल सकती है? इसके अलावा, अगर मैं फ़ाइल लोड करता हूं तो "हैलो" और फिर "वर्ल्ड" इनपुट करता हूं, मुझे उसी पंक्ति में "हैलोवर्ल्ड" दिखाई देता है लेकिन मुझे 2 अलग-अलग पंक्तियों में "हैलो" और "वर्ल्ड" मुद्रित करना है।एंड्रॉइड फ़ाइलऑटपुटस्ट्रीम स्थान फ़ाइल को सहेजें
फ़ाइल को सहेजने के लिए:
public void writeToFile(String data) {
try {
FileOutputStream fou = openFileOutput("data.txt", MODE_APPEND);
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fou);
outputStreamWriter.write(data);
outputStreamWriter.close();
}
catch (IOException e) {
Log.e("Exception", "File write failed: " + e.toString());
}
}
फ़ाइल लोड करने के लिए:
public String readFromFile() {
String ret = "";
try {
InputStream inputStream = openFileInput("data.txt");
if (inputStream != null) {
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String receiveString = "";
StringBuilder stringBuilder = new StringBuilder();
while ((receiveString = bufferedReader.readLine()) != null) {
stringBuilder.append(receiveString);
}
inputStream.close();
ret = stringBuilder.toString();
}
}
catch (FileNotFoundException e) {
Log.e("login activity", "File not found: " + e.toString());
} catch (IOException e) {
Log.e("login activity", "Can not read file: " + e.toString());
}
return ret;
}
धन्यवाद
[अद्यतन]
मैं हर इनपुट के बाद डाला है "\ n":
user = (EditText) v.findViewById(R.id.username);
writeToFile(user.getText().toString() + "\n");
लेकिन जब मैं अपने फ़ाइल वे हमेशा एक ही लाइन पर हैं प्रिंट
मैं कैसे फ़ाइल को सहेजने के लिए नए पथ सेट कर सकते ? – xXJohnRamboXx