gpt4 book ai didi

android - 如何在 webview 中加载 base64 字符串?

转载 作者:行者123 更新时间:2023-11-30 04:12:29 28 4
gpt4 key购买 nike

我正在尝试使用“iText”库读取 pdf 文件,我正在使用“getPageContent(int number)”获取页面

此方法返回 byte[],当 byte[] 加载到 WebView 时,它显示一个空 View 。

try {
PdfReader reader = new PdfReader(getAssets().open("policy.pdf"));
int n = reader.getNumberOfPages();
String base64 = android.util.Base64.encodeToString(
reader.getPageContent(1), android.util.Base64.DEFAULT);
WebView webView = new WebView(this);

webView.loadData(base64, "text/html", "base64");

setContentView(webView);

} catch (Exception e) {
e.printStackTrace();
}

最佳答案

您希望页面中的文本显示在 Webview 上。据我在 iText API 中所见,您使用的整个方法都是不正确的。

这是更正后的代码(未经测试,因为我没有图书馆许可证)

try {
PdfReader reader = new PdfReader(getAssets().open("policy.pdf"));
int n = reader.getNumberOfPages();


PRTokeniser tokenizer = new PRTokeniser(reader.getPageContent(1));
String content="";
while (tokenizer.nextToken()) {
if (tokenizer.getTokenType() == PRTokeniser.TokenType.STRING) {
content = content +"\r\n<br />" + tokenizer.getStringValue();
}
}

WebView webView = new WebView(this);

webView.loadData(content, "text/html", "UTF-8");

setContentView(webView);

} catch (Exception e) {
e.printStackTrace();
}

关于android - 如何在 webview 中加载 base64 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10616269/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com