我尝试在我的android项目中使用名为Chunk Templates(类似于velocity)的模板引擎(get https://code.google.com/p/chunk-templates/)。在使用它时,我需要访问我的资产文件夹中的模板文件:
Theme t = new Theme("path to file"); //path getAssets()..? file:///....?
Chunk c = t.makeChunk("template"); //template.chtml
c....
“template.chtml”位于我的eclipse文件夹“assets \ themes \ template.chtml”中 在我的设备上运行时,模板引擎会说,找不到模板。
我必须使用哪条路径?
问候, Hamzty
答案 0 :(得分:1)
好的,我写了一封给作者的电子邮件,该解决方案仍未发布,将在未来的发行版中添加。我得到了一个实验版本,代码如下所示:
AndroidThemeLoader loader = new AndroidThemeLoader(getBaseContext());
Theme theme = new Theme(loader);
Chunk chunk = theme.makeChunk("test#subtest");
chunk.set("name", "Dennis");
String html = chunk.toString();
String mime = "text/html";
String encoding = "utf-8";
WebView myWebView = (WebView)this.findViewById(R.id.myWebView);
myWebView.getSettings().setJavaScriptEnabled(true);
String baseURL = null;
myWebView.loadDataWithBaseURL(baseURL, html, mime, encoding, null);
谢谢大家的帮助!
答案 1 :(得分:0)
试试这个:
AssetFileDescriptor descriptor = getAssets().openFd("your file");
FileReader reader = new FileReader(descriptor.getFileDescriptor());
答案 2 :(得分:0)
尝试InputStream instream = getAssets().open("file.xxx");
从您的Activity类访问assets文件夹中的文件。
编辑:
你也可以这样试试:http://www.x5software.com/chunk/examples/ChunkExample?example=string&loc=en_US#input-java-EG1
需要一些手动硬编码,但我认为它会起作用。
答案 3 :(得分:0)
试试这个。
file:///android_asset/themes/template.chtml