今天有人问Swift中UIWebView加载页面出来的是乱码,问知道怎么解决么?

OC我知道肯定不会有乱码问题,Swift就不知道了,因为没有试过.....于是...我自己动手试试啦...

OC和Swift我都写了一遍,代码如下:

用loadRequest确实会是乱码显示,使用loadHTMLString就不会.....因为你的html没有对文字进行编码格式转化 要转化成utf-8才可以.若webView是通过loadHTMLString加载的网页,是将网页预加载下来转换为string.

OC代码如下:

#import "ViewController.h"

#define kScreenWidth  [UIScreen mainScreen].bounds.size.width
#define kScreenHeight [UIScreen mainScreen].bounds.size.height @interface ViewController ()<UIWebViewDelegate> @property (nonatomic, strong) UIWebView *webView; @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad]; [self.view addSubview:self.webView];
} - (UIWebView *)webView { if (!_webView) {
_webView = [[UIWebView alloc]initWithFrame:CGRectMake(, , kScreenWidth, kScreenHeight)];
_webView.delegate =self;
// [_webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://139.199.12.84:5858/sxweb/attached/projectStep/1.html"]]];
NSURL *url = [NSURL URLWithString:@"http://139.199.12.84:5858/sxweb/attached/projectStep/1.html"];
NSString * strUrl = [[NSString alloc]initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil]; [_webView loadHTMLString:strUrl baseURL:url];
}
return _webView;
}

Swift代码如下:

import UIKit

class ViewController: UIViewController, UIWebViewDelegate {

    var webView: UIWebView?

    override func viewDidLoad() {
super.viewDidLoad() webView = UIWebView(frame: CGRect(x: , y: , width: view.frame.size.width, height: view.frame.size.height))
webView?.delegate = self
let url = URL(string: "http://139.199.12.84:5858/sxweb/attached/projectStep/1.html")
// let request = URLRequest(url: url!)
// webView?.loadRequest(request)
let urlString = try? String(contentsOf: url!, encoding: String.Encoding.utf8)
webView?.loadHTMLString(urlString!, baseURL: url!)
view.addSubview(webView!)
}
}

显示没有乱码界面:

UIWebView显示乱码问题的更多相关文章

  1. Linux中文显示乱码?如何设置centos显示中文

    Linux中文显示乱码?如何设置centos显示中文 怎么设置Linux系统中文语言,这是很多小伙伴在开始使用Linux的时候,都会遇到一个问题,就是终端输入命令回显的时候中文显示乱码.出现这个情况一 ...

  2. linux终端 字符界面 显示乱码

    方法一:配置SSH工具 SecureCRT中文版配置 [全局选项]→[默认会话]→[编辑默认设置]→[终端]→[外观]→[字体]→[新宋体 10pt CHINESE_GB2312]→[字符编码 UTF ...

  3. 下载apk文件浏览器会直接打开并显示乱码的问题

    今天同事反映他的apk文件在自己的老项目中下载有问题:下载apk文件浏览器会直接打开并显示乱码,在别的项目中就没有问题. 后分析response的content-type发现,老项目的类型是text/ ...

  4. Xshell个性化设置,解决Xshell遇到中文显示乱码的问题

    在同事的推荐下,今天开始使用Xshell连接Linux,但是发现一个“遇到中文显示乱码”的问题, 同事的解决方案如下: 平常给Linux上传文件之前,先把文件转换成UTF-8编码形式, 然后设置Xsh ...

  5. (转)sqlplus中文显示乱码的问题

    sqlplus中文显示乱码的问题 2010-07-19 11:33:26 分类: LINUX 在windows下sqlplus完全正常,可是到linux下,sqlplus中文显示就出问题了,总是显示“ ...

  6. mysql 乱码问题(程序界面显示正常,mysql command line显示乱码)

    今天用java写一个程序,用的是mysql数据库.界面出现乱码,然后写了一个过滤器结果了乱码问题. 但是,当我在mysql command line 中查询数据的时候,在界面上显示正常的数据,在mys ...

  7. linux下打开txt显示乱码的解决方法

    Linux打开txt文件乱码的解决方法   Linux显示在Windows编辑过的中文就会显示乱码是由于两个操作系统使用的编码不同所致.Linux下使用的编码是utf8,而Windows使用的是gb1 ...

  8. iTextSharp带中文转换出来的PDF文档显示乱码

    刚才有写一个小练习<Html代码保存为Pdf文件>http://www.cnblogs.com/insus/p/4323224.html.马上有网友说,当截取块有中文时,保存的pdf文件将 ...

  9. 【linux】英文显示乱码解决

    在linux环境中中文显示正常,而英文却显示乱码 用 echo $LANG 显示编码为 zh_CN.GB18030 解决方法: 输入 export LC_ALL=POSIX 即可

随机推荐

  1. JSP+Servlet中使用jspsmartupload.jar进行图片上传下载

    JSP+Servlet中使用cos.jar进行图片上传 upload.jsp <form action="FileServlet" method="post&quo ...

  2. how to enable remote access for root user

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

  3. 巧用freemarker

    使用Freemarker宏进行可扩展式模块化编程 该文是转载而来,并非我本人所写,但是觉得真心不错,所以收藏一下 一.前言 今天的文章聊一下freemarker的一些特性:宏,我们将使用它写出一些模块 ...

  4. C# 利用反射给不同类型对象同名属性赋值

    public class ObjectReflection { public static PropertyInfo[] GetPropertyInfos(Type type) { return ty ...

  5. 第四章ppt课后作业

    字符串加密解密: 源代码: package tutorial04String; import javax.swing.JOptionPane; public class Wordsecret { pu ...

  6. 提取数据库字段里面的值,并改变+图片懒加载,jquery延迟加载

    要求:手机端打开某个页面的详细信息,因为网速或者别的原因,响应太慢,因为图片大的原因,希望先进来,图片在网页运行的情况再慢慢加载(jquer延迟加载) http://www.w3cways.com/1 ...

  7. jdbk应用实例

    首先要在数据库中建好表,表的属性要跟代码中的一致 使用jdbk连接数据库,并且进行增删改查的操作(curd). package com.beiwi; import java.sql.Connectio ...

  8. MySql开始日期、结束日期查询

    str_to_date('2016-08-24', '%Y-%m-%d %H') validStartTime str_to_date('2016-09-16', '%Y-%m-%d %H') val ...

  9. Codeigniter

    最近准备接手改进一个别人用Codeigniter写的项目,虽然之前也有用过CI,但是是完全按着自己的意思写的,没按CI的一些套路.用在公众的项目,最好还是按框架规范来,所以还是总结一下,免得以后别人再 ...

  10. [vivado系列]Zynq开发常用文档

    时间:2016.06.13 目的:阶段性总结学习的策略 ------------------------------------------------------------------------ ...