2019-5-21-win10-uwp-url-encode
| title | author | date | CreateTime | categories |
|---|---|---|---|---|
|
win10 uwp url encode
|
lindexi
|
2019-5-21 9:54:7 +0800
|
2018-2-13 17:23:3 +0800
|
Win10 UWP
|
开发中,经常遇到使用中文无法作为 URL 传输的情况,如果想把 中文作为 URL 传输,那么需要对中文进行转换。
UWP 提供一些方法让我们很容易把 中文转为 URL ,但是转换还是有一些坑。
我最近图床使用中文图片上传,地址出现错误。
原因是URL不支持中文,所以需要把中文转URL可以认识字符,那么如何转?
我发现有好多个方法去转,下面将会告诉大家我知道所有方法。
可以使用的函数有三个
Uri.EscapeDataString WebUtility.UrlEncode WebUtility.HtmlEncode 都可以进行转换,但是这三个是不同的。
对于中文,Uri.EscapeDataString WebUtility.UrlEncode转换得到是一样。
对于符号,Uri.EscapeDataString WebUtility.UrlEncode 有一点不同。
WebUtility.HtmlEncode 做的转换很少,是将 html 源文件中不容许出现的字符进行编码,于是他的作用是比较小的。
Uri.EscapeDataString WebUtility.UrlEncode WebUtility.HtmlEncode 对应的是
Uri.UnescapeDataString WebUtility.UrlDecode WebUtility.HtmlDecode,如果从中文转 URL 就可以用他们弄回来。
先写一个测试使用代码,看看对
对字符串:~+ =!@$#^&*http://lindexi.oschina.io转换的到的是什么
通过 Uri.EscapeUriString 返回 ~+%20=!@$#%5E&*http://lindexi.oschina.io
WebUtility.UrlEncode 返回 %7E%2B+%3D!%40%24%23%5E%26*http%3A%2F%2Flindexi.oschina.io
他们都是标准,关于区别,请看 http://stackoverflow.com/a/11236038/6116637
WebUtility.HtmlEncode 可以转 &# ,把 < 转<,>转> 所以需要在UWP进行这个转换就可以使用函数。
如果希望继续看三个转换有哪些不同,请看下面,我做了不同字符使用三个函数获得的。
| | Uri.EscapeUriString|Uri.EscapeDataString|WebUtility.UrlEncode|WebUtility.HtmlEncode|
|--|--|--|--|
| 空格 |%20|%20 |+ | 空格|
|! |!|%21 |! |!|
|+ |+|%2B |%2B |+|
|" |%22|%22 |%22 |"|
|# |#|%23 |%23 |#|
|$ |$|%24 |%24 |$|
|* ||%2A | |*|
|( |(|%28 |( |(|
|) |)|%29 |) |)|
|~ || |%7E |~|
|1 |1|1 |1 |1|
|2 |2|2 |2 |2|
|3 |3|3 |3 |3|
|a |a|a |a |a|
|b |b|b |b |b|
|: |:|%3A |%3A |:|
|' |'|%27 |%27 |'|
|< |%3C|%3C |%3C |<|
|> |%3E|%3E |%3E |>|
|[ |[|%5B |%5B |[|
|] |]|%5D |%5D |]|
|/ |/|%2F |%2F |/|
|{ |%7B|%7B |%7B |{|
|} |%7D|%7D |%7D |}|
|| |%7C|%7C |%7C |||
|, |,|%2C |%2C |,|
|? |?|%3F |%3F |?|
|中 |%E4%B8%AD|%E4%B8%AD |%E4%B8%AD |中|
|文 |%E6%96%87|%E6%96%87 |%E6%96%87 |文|
2019-5-21-win10-uwp-url-encode的更多相关文章
- win10 uwp 读取保存WriteableBitmap 、BitmapImage
我们在UWP,经常使用的图片,数据结构就是 BitmapImage 和 WriteableBitmap.关于 BitmapImage 和 WriteableBitmap 区别,我就不在这里说.主要说的 ...
- Win10 UWP开发实现Bing翻译
微软在WP上的发展从原来的Win7到Win8,Win8.1,到现在的Win10 UWP,什么是UWP,UWP即Windows 10 中的Universal Windows Platform简称.即Wi ...
- 【Win10 UWP】URI Scheme(一):Windows Store协议的解析和使用
协议是Windows Phone和Windows Store应用的一个重要特点,可以做到在不同应用之间进行互相呼起调用.小小协议,学问大着呢.我打算写几篇关于协议在UWP中使用的文章. 这一讲的主要对 ...
- win10 UWP GET Post
win10 应用应该是要有访问网络,网络现在最多的是使用GET,Post,简单的使用,可以用网络的数据:获得博客的访问量. 在使用网络,我们需要设置Package.appxmanifest 网络请求使 ...
- win10 UWP 剪贴板 Clipboard
win10 UWP 剪贴板 Clipboard使用Windows.ApplicationModel.DataTransfer.Clipboard 设置文本 DataPackage dataPackag ...
- win10 uwp smms图床
本文,如何使用smms图床上传图片,用到win10 uwp post文件,因为我是渣渣,如果本文有错的,请和我说,在本文评论,或发给我邮箱lindexi_gd@163.com,请不要发不良言论 找到一 ...
- win10 uwp 线程池
原文:win10 uwp 线程池 如果大家有开发 WPF 或以前的程序,大概知道线程池不是 UWP 创造的,实际上在很多技术都用到线程池. 为什么需要线程池,他是什么?如何在 UWP 使用线程池,本文 ...
- win10 uwp 使用 asp dotnet core 做图床服务器客户端
原文 win10 uwp 使用 asp dotnet core 做图床服务器客户端 本文告诉大家如何在 UWP 做客户端和 asp dotnet core 做服务器端来做一个图床工具 服务器端 从 ...
- win10 uwp httpClient 登陆CSDN
本文告诉大家如何模拟登陆csdn,这个方法可以用于模拟登陆其他网站. HttpClient 使用 Cookie 我们可以使用下面代码让 HttpClient 使用 Cookie ,有了这个才可以保存登 ...
- win10 uwp 手把手教你使用 asp dotnet core 做 cs 程序
本文是一个非常简单的博客,让大家知道如何使用 asp dot net core 做后台,使用 UWP 或 WPF 等做前台. 本文因为没有什么业务,也不想做管理系统,所以看到起来是很简单. Visua ...
随机推荐
- 【问题解决方案】本地仓库删除远程库后添加到已有github仓库时仓库地址找不到的问题(github仓库SSH地址)
参考: 我参考我自己.jpg 背景: 想添加一下远程库,github主页找了半天,Google搜索了半天,都没有找到,所以这里写一个,记录一下 1-格式分析:git@github.com:用户名/仓库 ...
- SET SESSION AUTHORIZATION - 为当前会话设置会话用户标识符和当前用户标识符
SYNOPSIS SET [ SESSION | LOCAL ] SESSION AUTHORIZATION username SET [ SESSION | LOCAL ] SESSION AUTH ...
- EBCDIC 1025 俄语
https://en.wikipedia.org/wiki/EBCDIC_1025 EBCDIC 1025 _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E ...
- Netflix:我们为什么要将GraphQL引入前端架构?
作者|Artem Shtatnov译者|无明 在这篇文章中,我们将分享 Netflix 在这些应用程序的前端架构中引入 GraphQL 所积累的经验. 在内部,我们把用于管理广告创建和组装的主要应用程 ...
- fiddler 4 抓取 https 设置
Fiddler抓取https 设置 1.打开fiddler,点击工具栏中的Tools—>Options,点击Actions,选择最后一项,Reset All certificates,然后关闭, ...
- Laravel框架中如何使用事件记录SQL查询到日志
在本文中,我们将说一下如何处理Laravel中的查询日志记录.如果你非常熟悉Laravel框架,Laravel可以选择将所有在当前请求中运行的查询记录在内存中. 查询记录 如果,你想要将日志文件保存在 ...
- 【leetcode】435. Non-overlapping Intervals
题目如下: Given a collection of intervals, find the minimum number of intervals you need to remove to ma ...
- Python--前端之HTML
html概述和基本结构 HTML概述 HTML是 HyperText Mark-up Language 的首字母简写,意思是超文本标记语言,超文本指的是超链接,标记指的是标签,是一种用来制作网页的语言 ...
- Python深度学习
序言 目的驱动型学习 概念解释 资料 https://www.tensorflow.org/ https://www.imooc.com/video/17186 https://www.cnblogs ...
- 2019牛客多校第五场H - subsequence 2 拓扑
H - subsequence 2 题意 要你使用前\(m\)个小写字母构造一个长度为\(n\)的字符串 有\(m*(m-1)/2\)个限制条件: \(c_{1} .c_{2}. len\):表示除去 ...