Microsoft.VisualBasic.dll的妙用(开发中肯定会用到哦)
前言
做过VB开发的都知道,有一些VB里面的好的函数在.NET里面都没有,而Microsoft.VisualBasic.dll却给我们提供使用这些函数的功能(没用过VB的这些功能一样可以使用,大同小异而已)
今天这里主要讲两个:一个是繁简转换,另一个是计算时间差,相信大家都有方法实现这两个功能,而我今天讲的却是只各需一句代码就实现这两个功能!
功能一:繁简转换
首先需要引用Microsoft.VisualBasic.dll,废话不多说直接上代码
using Microsoft.VisualBasic; string str="悲梦"; //简体转繁体
str=Strings.StrConv(str, VbStrConv.TraditionalChinese, ); //繁体转简体
str=Strings.StrConv(str, VbStrConv.SimplifiedChinese, );
String.StrConv 的說明:
第一个参数是待转换的字符串;
第二个参数是欲转换的字体的枚举值;
第三个参数是文字转换后,最后对应的编码格式(LocaleID);
1028 繁体中文
1033 ASCII
2052 简体中文
為何不管繁体转简体还是简体转繁体我都用 1033 呢?
首先,要先知道,有些简体中文的编码值是在繁体中文中对应不到任何字的。此时,显示的字就会是 "?" 号。
因为 2052 的 「 国] 已经是简体字了,转换到繁体时,刚好其编码对应不到1028 的编码,因此会是问号。
最好的方式,是以 en-US(美国) 作为编码格式。当以 en-US 作为最后的编码格式后,又遇到亚洲字时,就会以 unicode 作为储存编码格式。此时刚好与 .net 的 string 储存格式相同。这样就解决了问题!
因此,当我们在做繁简转换时,请将第三个参数都设成 1033
功能二:时间差计算
相信大家都有计算两个时间的时间差,有可能是计算相差的天数、小时、分钟、秒,这些我们都可以通过一句代码来实现,先上代码
using Microsoft.VisualBasic; //可以得到dt=50
long dt = DateAndTime.DateDiff(DateInterval.Hour, DateTime.Now, DateTime.Now.AddHours());
DateAndTime.DateDiff说明:
第一个参数是需要得到的时间差的形式的枚举值;可以是天数,小时,分钟,秒数等 第二个参数就是减的时间值; 第三个参数就是被减的时间值;
结束语
以上两个功能看起来都很简单,但是如果不借助Microsoft.VisualBasic.dll的话实现起来还是挺麻烦的,用以上的方法实现起来既方便又准确!大家觉得好的话,推荐一下哦!
Microsoft.VisualBasic.dll的妙用(开发中肯定会用到哦)的更多相关文章
- Microsoft.VisualBasic.dll的妙用and 改善C#公共程序类库质量的10种方法
Microsoft.VisualBasic.dll的妙用(开发中肯定会用到哦) 前言 做过VB开发的都知道,有一些VB里面的好的函数在.NET里面都没有,而Microsoft.VisualBasic. ...
- Microsoft.VisualBasic.dll内置的判断变量类型的一系列实用方法
今天意外读到一线码农的一篇文章<挖一挖C#中那些我们不常用的东西之系列(2)--IsXXX 系列方法>,文章中讲到 Microsoft.VisualBasic.dll 里面的Informa ...
- 【转自CSDN】深入 Microsoft.VisualBasic.Strings.StrConv 簡繁轉換
深入 Microsoft.VisualBasic.Strings.StrConv 簡繁轉換 昨天又遇到一個簡繁轉換的需求, 雖然這個問題以前已經處理過了, 但是以前是用自己建立的 b52gb 和 gb ...
- WPF使用Microsoft.VisualBasic创建单例模式引起的权限降低问题
在进行WPF开发时,总是在找更加优雅去写单例模式的代码. 很多人都喜欢用Mutex,一个App.cs下很多的Mutex,我也喜欢用. 看完<WPF编程宝典>的第七章Applicaton类后 ...
- 未能加载文件或程序集 Microsoft.VisualBasic.PowerPacks.Vs, Version=10.0.0.0 解决 亲测
项目打开winform程序做的某些窗体时报错: ************* 异常文本 ************** System.Reflection.TargetInvocationExceptio ...
- 使用Microsoft.ExceptionMessageBox.dll捕获WinForm程序中异常信息并弹窗显示
WinForm程序开发中,在开发模式下对于异常的处理一般都是通过调试的方式来查找异常发生的未知与原因. 下面以“除数为0”的情况来具体说明. Button按钮事件如下: private void bu ...
- Microsoft.mshtml.dll 添加引用及类型选择错误问题解决办法
在比较早的文章中,提到使用 Microsoft.mshtml.dll 进行模拟浏览器点击的例子. 1.添加引用的问题 一般在开发环境下会在三个地方存有microsoft.mshtml.dll文件.所以 ...
- 一个实用的却被忽略的命名空间:Microsoft.VisualBasic
当你看到这个命名空间的时候,别因为是VB的东西就匆忙关掉网页,那将会是您的损失,此命名空间中的资源最初目的是为了简化VB.NET开发而创建的,所以Microsoft.VisualBasic并不属于Sy ...
- "一个实用的却被忽略的命名空间:Microsoft.VisualBasic":
当你看到这个命名空间的时候,别因为是vb的东西就匆忙关掉网页,那将会是您的损失,此命名空间中的资源最初目的是为了简化vb.net开发而创建的,所以microsoft.visualbasic并不 ...
随机推荐
- Pinball Save Earth 正式上线
有问题或者建议大家可以联系我的QQ 914287516 或者qq邮箱 官方qq群 325631077:
- 027class_part1
因为有基础,我直接简单写了##定义类,创建对象,调用对象方法,返回值 class person: def speak(self,x): print('love',x) return x + '**** ...
- 复制collections
use product-test; var cursor = db.user.find(); use product; while(cursor.hasNext()){db.user.insert(c ...
- 使用JQuery做一组复选框的功能。
之前做过复选框的功能,奈何笔记丢失,害的我又鼓捣了一番...还是博客园做笔记比较好. 假设现在有一个表格,每一行都有一个复选框按钮.在表头还有一个全选的复选框按钮. ①.当点击一个全选按钮时,下面的同 ...
- reactnative调研
/** * This function parses the exported methods inside RCTBridgeModules and * generates an array ...
- Android中跑马灯效果
<com.randy.test1.self.MarqueeText android:id="@+id/btn1" android:layout_width="mat ...
- 14、SpringBoot-CRUD错误处理机制(1)
一.springboot默认的处理机制 1.浏览器返回一个错误的页面 默认处理错误:返回一个错误的页面: 包括错误类型.时间...... 2.其他客户端访问 默认响应一个json数据 原理: 错误 ...
- Java 和 .NET SHA1算法记录
最近做了一个.NET访问Java接口的小Demo,其中用到了SHA1加密,大体思路就是.NET 传一些参数然后SHA1加密,Java端接收到之后在SHA1加密对比. Java代码: public fi ...
- UDP and TCP
UDP unreliable, just add de-multiplexing and error checking on data than IP. Best effort datagram(数据 ...
- 利用python 传输文件
最近在学python3 发现了一个很有用的功能,该功能可以将安装python 的机器作为一台http 服务器来分享本机的文件, 具体的使用记录如下 python3 的使用方法 直接在windows 的 ...