iOSwkwebView 打开 TXT/PDF 文件乱码的问题

2021-09-27  本文已影响0人  奔跑的小蚂蚁_8b28

最近做资料文件下载下来并查看的时候,用 WKWebView 打开office 类型的文件的时候是没问题的,但是打开测试人员上传的一个 TXT/PDF 文件就出现了乱码问题,经过查看,应该是文件的编码问题,于是找了种方式来解决出现的问题。

path = [path stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:path] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:120];

//注入JS

WKUserScript * cookieScript = [CCCommonAPI injectJS];

[self.webView.configuration.userContentController addUserScript:cookieScript];

[CCCommonAPI configCookieWithRequest:request];

//TXT/PDF文件在iOS14以上版本就出现了乱码问题,经过查看,应该是文件的编码问题

//hasSuffix方法判断字符串是否以某个字符结束,转成二进制文件

if ([path hasSuffix:@"txt"]) {

        NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:path]];

        [self.webView loadData:data MIMEType:@"text/html" characterEncodingName:@"GBK" baseURL:nil];

    }

else if ([path hasSuffix:@"pdf"]){

        NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:path]];

        [self.webView loadData:data MIMEType:@"application/pdf" characterEncodingName:@"GBK" baseURL:nil];

    }

else{

    [self.webView loadRequest:request];

}
上一篇下一篇

猜你喜欢

热点阅读