我的应用程序中有一个非常大的 HTML 字符串。
当我在代码中使用它时,一切都很好,但是当我尝试在 strings.xml 中声明它时,我遇到了一些错误。有没有办法在 strings.xml 中制作字符串的简单副本?谢谢
HTML 和 XML 是同一种基本语言,我不相信你可以将 HTML 存储在一个字符串中,为什么不保存 html 页面并将其与应用程序一起打包呢?
在 res > raw 中将页面保存为 html 页面,然后调用该方法
String html = Utils.readRawTextFile(ctx, R.raw.rawhtml);
public static String readRawTextFile(Context ctx, int resId)
{
InputStream inputStream = ctx.getResources().openRawResource(resId);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
int i;
try {
i = inputStream.read();
while (i != -1)
{
byteArrayOutputStream.write(i);
i = inputStream.read();
}
inputStream.close();
} catch (IOException e) {
return null;
}
return byteArrayOutputStream.toString();
}
错误可能出现在特殊字符上,例如@
double quote
single quote
等,以克服它的前缀\
,您的错误得到解决
如果您以编程方式分配相同的字符串,您也会发现相同的问题
String mString= "your huge string with @ error";
在这你也必须克服前缀反斜杠
String mString= "your huge string with \@ error";