0

我的应用程序中有一个非常大的 HTML 字符串。

当我在代码中使用它时,一切都很好,但是当我尝试在 strings.xml 中声明它时,我遇到了一些错误。有没有办法在 strings.xml 中制作字符串的简单副本?谢谢

4

2 回答 2

4

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();
     }
于 2012-04-13T11:58:54.413 回答
1

错误可能出现在特殊字符上,例如@ double quote single quote等,以克服它的前缀\,您的错误得到解决

如果您以编程方式分配相同的字符串,您也会发现相同的问题

String mString= "your huge string with @ error";

在这你也必须克服前缀反斜杠

 String mString= "your huge string with \@ error";
于 2012-04-13T11:57:49.093 回答