我在执行一个Android应用程序相关的 web视图。我收到来自服务器的数据格式可以是JPG或PDF文件或doc文件等Base64编码数据的字符串。
我想用装载的Base64编码数据串中的WebView:
webview.loadData(urlString,text / html的;字符集= UTF-8,NULL);
示例:
字符串urlString = getIntent()getStringExtra(base64String)。
字符串MIMETYPE = getIntent()getStringExtra(Mime类型)。
WebSettings设置= webView.getSettings();
settings.setDefaultTextEncodingName(UTF-8);
如果(Build.VERSION.SDK_INT> = Build.VERSION_ codeS.FROYO){
字符串的base64 = Base64.en codeToString(urlString.getBytes(),Base64.DEFAULT);
webView.loadData(urlString,text / html的;字符集= UTF-8,BASE64);
} 其他 {
串标头=&其中;?xml的版本= \1.0 \编码= \UTF-8 \>?;
webView.loadData(头+ urlString,text / html的; chartset = UTF-8,NULL);
}
解决方案
只是试试:
webView.loadData(urlString,text / html的;字符集= UTF-8,BASE64);
I am implementing an android application related to Webview. I am getting base64 data string from server that data format may be jpg or pdf file or doc file etc.
I want to load that base64 data string in webview using:
webview.loadData(urlString, "text/html; charset=utf-8", null);
Sample:
String urlString = getIntent().getStringExtra("base64String");
String mimeType = getIntent().getStringExtra("MimeType");
WebSettings settings = webView.getSettings();
settings.setDefaultTextEncodingName("utf-8");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {
String base64 = Base64.encodeToString(urlString.getBytes(), Base64.DEFAULT);
webView.loadData(urlString, "text/html; charset=utf-8", "base64");
} else {
String header = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>";
webView.loadData(header + urlString, "text/html; chartset=UTF-8", null);
}
解决方案
Just Try it:
webView.loadData(urlString, "text/html; charset=utf-8", "base64");