iOSwkwebView 打開 TXT/PDF 文件亂碼的問題


  最近做資料文件下載下來並查看的時候,用 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];

    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM