我需要在运行时创建并打开HTML文件。
<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>
在上面的格式中,我需要在运行时更新value
字段。更新后我想在我的Android应用程序中打开这个html文件。
更新 我知道我们可以像下面那样创建HTML文件..
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...);
}
但我想知道是否还有其他方法来创建HTML文件,例如使用XmlSerializer创建XML文件 谢谢!
答案 0 :(得分:4)
如果要运行html文件运行时,请尝试使用此代码。
webview_data.loadDataWithBaseURL("file:///android_asset/", htmlString,"text/html", "UTF-8",null);
并确保您是否要使用任何css或javascript文件,然后将其放入android assest文件夹..
答案 1 :(得分:1)
如何创建html文件。
如果您需要更多详细信息,Oracle Java教程将介绍基本的Java结构,以及如何进行简单的文件I / O.
在不同的环境中(例如在网络服务中)还有其他更“优雅”的方式来做这种事情,但如果这是你需要做的总和,那么......保持简单。
...有没有其他方法可以创建HTML文件,比如使用XmlSerializer创建XML文件。
不是HTML。您可以通过这种方式创建XHTML。
话虽如此,以这种方式构建HTML或XHTML听起来像是一个糟糕的主意。与字符串连接或基于模板的方法相比,生成的代码既不可读也不高效。
(试试看......)
答案 2 :(得分:1)
在Android中生成HTML页面确实比手动字符串连接更好。有一些灵活的Java库可以为您完成(回想一下,您可以非常轻松地在Android项目中使用常规Java库。)
答案 3 :(得分:0)
创建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>
存储在Assets文件夹中,为MyHtml.html
在我的应用中阅读并更新此文件,如下所示
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");
.
.
.
然后我将我的html文件加载到webView中,如下所示
myWebView.loadData(str, "text/html; charset=utf-8", "UTF-8");
正如斯蒂芬的建议最终我以这个解决方案结束了。谢谢@Stephen