将可编辑对象保存到文件
Saving an Editable object to file
如何将 mEditText.getText();
等可编辑对象保存到文件中?
我尝试使用以下代码并且它有效但最后我得到一个 IOException
和 IOException.getLocalizedMessage();
并且 IOException.getMessage();
都显示以下字符串。
E/Error:(5223): android.text.SpannableStringBuilder
这是我试过的代码:
try {
SpannableStringBuilder ssb = new SpannableStringBuilder(mMainEditText.getText());
//Create a File object with user entered file name...
File outputFile = new File(getDocStorageFolder(),
mUserEnterFileName
+ ".msd");
Log.e("Path:", "" + outputFile.getAbsolutePath());
Toast.makeText(MainActivity.this, "" + outputFile.getAbsolutePath(), Toast.LENGTH_LONG).show();
FileOutputStream fos = new FileOutputStream(outputFile); //create your FileOutputStream here
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(ssb);
oos.close();
oos.flush();
fos.close();
Toast.makeText(MainActivity.this, "Success!", Toast.LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
Log.e("Error: ", e.getMessage());
Log.e("Error: ", e.getLocalizedMessage());
Toast.makeText(MainActivity.this, "Error occured while "
+ "attempting to create the Document file!", Toast.LENGTH_LONG).show();
}
您不能直接将 Editable
或 SpannableStringBuilder
保存到文件。
欢迎您将 Spanned
的 内容 转换为可以写入文件的内容。我不知道有什么东西可以涵盖所有可能的跨度,这在很大程度上是因为任何人都可以发明自己的跨度。
Android SDK 中的 Html.toHtml()
将采用跨度的子集并从中生成 HTML。
此外,my CWAC-RichEdit library contains a SpannedXhtmlGenerator
将跨度的不同子集转换为 XHTML,旨在使用同一库中的 SpannableStringGenerator
读回。
如何将 mEditText.getText();
等可编辑对象保存到文件中?
我尝试使用以下代码并且它有效但最后我得到一个 IOException
和 IOException.getLocalizedMessage();
并且 IOException.getMessage();
都显示以下字符串。
E/Error:(5223): android.text.SpannableStringBuilder
这是我试过的代码:
try {
SpannableStringBuilder ssb = new SpannableStringBuilder(mMainEditText.getText());
//Create a File object with user entered file name...
File outputFile = new File(getDocStorageFolder(),
mUserEnterFileName
+ ".msd");
Log.e("Path:", "" + outputFile.getAbsolutePath());
Toast.makeText(MainActivity.this, "" + outputFile.getAbsolutePath(), Toast.LENGTH_LONG).show();
FileOutputStream fos = new FileOutputStream(outputFile); //create your FileOutputStream here
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(ssb);
oos.close();
oos.flush();
fos.close();
Toast.makeText(MainActivity.this, "Success!", Toast.LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
Log.e("Error: ", e.getMessage());
Log.e("Error: ", e.getLocalizedMessage());
Toast.makeText(MainActivity.this, "Error occured while "
+ "attempting to create the Document file!", Toast.LENGTH_LONG).show();
}
您不能直接将 Editable
或 SpannableStringBuilder
保存到文件。
欢迎您将 Spanned
的 内容 转换为可以写入文件的内容。我不知道有什么东西可以涵盖所有可能的跨度,这在很大程度上是因为任何人都可以发明自己的跨度。
Html.toHtml()
将采用跨度的子集并从中生成 HTML。
此外,my CWAC-RichEdit library contains a SpannedXhtmlGenerator
将跨度的不同子集转换为 XHTML,旨在使用同一库中的 SpannableStringGenerator
读回。