我在Android Studio的内部存储文件中读取我正在制作的Android应用程序时遇到问题。我有一个具有edittext的应用程序,用户可以输入文本。然后,在按钮单击时,我将此文本保存在INTERNAL STORAGE中以备将来使用。
但是,当我将文件从内部存储器加载回edittext时,我使用的过程会将某些字符(***特别是英语以外的语言)更改为奇数符号。例如,如果我使用俄语文本输入,保存文件,并尝试加载它,它将是一堆混乱的符号和字母。
以下是节省内部存储的代码:
String codeData = htmlCode.getText().toString();
try {
FileOutputStream fileOutputStream = getActivity().openFileOutput("MyFile.html", getActivity().MODE_PRIVATE);
//byte[] bytes = htmlCode.getText().toString().getBytes("UTF-8");
fileOutputStream.write(codeData.getBytes("UTF-32"));
fileOutputStream.close();
} catch (Exception e) {
}
以下是从内部存储加载的代码:
String putThisStringinEditText = "";
try {
FileInputStream fileInputStream = getActivity().openFileInput("MyFile.html");
int c;
String temp = "";
while ((c = fileInputStream.read()) != -1) {
temp = temp + Character.toString((char)c);
}
putThisStringinEditText = temp;
} catch (Exception e) {
}
另外,请注意***我知道问题不在于保存文件,因为我有其他测试方法,并且我已将问题确定为源于加载文件。