2

I need to create and open an HTML file at runtime.

    <html>
      <body>
        <form name="Home" method="POST" action='' >
          <input id='Title' type='hidden' value="Mr" name='Title'/>
          <input id='Name' type='hidden' value="bala" name='Name'/>
           .
           .
           .
         </form>
         <script language='javascript'>
            //java script
         </script>
      </body>
    </html>

In above format, i need to update value field at runtime. After updating I want to open this html file within my android application.

Update: I know we can crate HTML file like below..

public static String createHTML(Study study) {
    String format =
            "<html>" +
            "<body>" +
            "<form name="Home" method="POST" action='' >" +
            "<input id='Title' type='hidden' value='%d' name='Title'/>" +
            .
            .
            .
            .
            "   </body>" +
            "</html>";
    return String.format(format, study.title, study.name...);
}

but i wank to know is there any other way to create HTML file like creating XML file using XmlSerializer Thanks!

4

4 回答 4

4

如果要运行 html 文件运行时,请尝试使用此代码。

 webview_data.loadDataWithBaseURL("file:///android_asset/", htmlString,"text/html", "UTF-8",null);

并确保是否要使用任何 css 或 javascript 文件,然后将其放入 android assest 文件夹中。

于 2013-08-24T09:43:29.260 回答
2

在 Android 中确实有比手动字符串连接更好的方法来生成 HTML 页面。有一些精巧的 Java 库可以为您完成(回想一下,您可以很容易地在 Android 项目中使用常规 Java 库)。

于 2013-08-24T09:08:11.703 回答
1

如何创建html文件。

  1. 打开文件
  2. 编写包含 HTML 的文本字符
  3. 关闭文件

如果您需要更多详细信息,Oracle Java 教程提供了有关基本 Java 结构以及如何进行简单文件 I/O 的课程。


还有其他更“优雅”的方式可以在不同的上下文中(例如在 Web 服务中)做这种事情,但如果这是你需要做的总和,那么......保持简单。


...有没有其他方法来创建 HTML 文件,比如使用 XmlSerializer 创建 XML 文件。

不是 HTML。您可以通过这种方式创建 XHTML。

话虽如此,以这种方式构造 HTML 或 XHTML 听起来是个糟糕的主意。与字符串连接或基于模板的方法相比,生成的代码既不可读也不高效。

(试试看……)

于 2013-08-24T07:47:50.457 回答
0
  1. 创建 MyHtml 文件

    MyHtml.html

    <html>
      <body>
        <form name="Home" method="POST" action='' >
        <input id='Name' type='hidden' value="MyName" name='Name'/>
        <input id='FirstName' type='hidden' value="MyFName" name='FirstName'/>          
           .
           .
           .
         </form>
         <script language='javascript'>
            //java script
         </script>
      </body>
    </html>
    
  2. 作为 MyHtml.html 存储在 Assets 文件夹中

  3. 在我的应用程序中读取并更新此文件,如下所示

    InputStream is = getAssets().open("MyHtml.html");
        int size = is.available();
    
        byte[] buffer = new byte[size];
        is.read(buffer);
        is.close();
    
        String str = new String(buffer);
        str = str.replace("MyName", "James Bala");
        str = str.replace("MyFName", "James");
        .
        .
        .
    
  4. 然后我在 webView 中加载了我的 html 文件,如下所示

    myWebView.loadData(str, "text/html; charset=utf-8", "UTF-8");
    

正如斯蒂芬的建议,我最终以这个解决方案结束。谢谢@斯蒂芬

于 2013-08-26T06:54:35.367 回答