类库

Posted on 2017-12-25 20:43  青青绿草  阅读(289)  评论(0编辑  收藏  举报

1.Math.Round  保留几位小数点,采用的是国际通行的是 Banker 舍入法即四舍六入五取偶(四舍六入五考虑,五后非零就进一,五后皆零看奇偶,五前为偶应舍去,五前为奇要进一。)。

 

2.String类的IndexOf 、LastIndexOf、String.Substring

(1)String.IndexOf 方法 (Char, Int32, Int32)
报告指定字符在此实例中的第一个匹配项的索引。搜索从指定字符位置开始,并检查指定数量的字符位置。
String.IndexOf(value, startIndex, count)
参数
value:要查找的 Unicode 字符。 
startIndex:搜索起始位置。 
count:要检查的字符位置数。
返回值(Int32):
如果找到该字符,则为 value 的索引位置;否则如果未找到,则为 -1。 

(2)LastIndexOf方法

报告指定的 Unicode 字符或 String 在此实例中的最后一个匹配项的索引位置。

(3)String.Substring方法

从此实例检索子字符串。 

名称 说明
String.Substring (Int32) 从此实例检索子字符串。子字符串从指定的字符位置开始。
String.Substring (Int32, Int32) 从此实例检索子字符串。子字符串从指定的字符位置开始且具有指定的长度。

示例:
string str = "深圳市盈基实业有限公司国际通邓事文*深圳市盈基实业有限公司国际通邓事文";
Label1.Text = str.Substring(11);//返回 “国际通邓事文*深圳市盈基实业有限公司国际通邓事文”
Label1.Text = str.Substring(11,7);//返回 “国际通邓事文*”

总结一下:

IndexOf、LastIndexOf都是返回一个位置,是个整数值;找不到都返回-1;
IndexOf是从左向右查,LastIndexOf是从右向左查,不管是IndexOf还是LastIndexOf,索引序列都是从左到右的(起始值是0)
Substring是字符串截取,返回值是一个截取后的字符串。

 

3.String.Trim()   从当前String对象移除所有前导空白字符和尾部空白字符。

   String.Trim(Char[]) 从当前String对象移除数组中指定的一组字符的所有前导匹配项和尾部匹配项。

   String.Join 连接指定数组的元素或集合的成员,在每个元素或成员之间使用指定的分隔符。

   String.Split 返回的字符串数组包含此实例中的字符串(由指定字符串或Unicode字符数组的元素分割)。

   String.ToLower 返回此字符串转换为小写形式的副本。

   String.ToCharArray 将字符串转换成字符数组

   将一个char数组转换成字符串 new string(char 数组名)

 

4.Array.Reverse 反转整个一维Array中元素的顺序。

 

5.Parse就是把String转换成int,char,double....等,也就是*.Parse(string) 括号中的一定要是string。

  Convert可以提供多种类型的转换,也就是Convert.*()括号中可以为很多种类型(包括string)。

  int.TryParse 与 int.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。最后一个参数为输出值,如果转换失败,输出值为 0。

eg. int.Parse():表示将数字内容的字符串转为int类型。

  如果字符串为空,则抛出ArgumentNullException异常;
  如果字符串内容不是数字,则抛出FormatException异常;
  如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;

 

6.MessageBox类---显示可包含文本、按钮和符号(通知并指示用户)的消息框。(具体见MSDN)

Show(String, String, MessageBoxButtons, MessageBoxIcon):显示具有指定文本、标题、按钮和图标的消息框。

函数描述:

public static DialogResult Show(
string text,
string caption,
MessageBoxButtons buttons,
MessageBoxIcon icon)
说明:

text

  类型:System.String

  要在消息框中显示的文本。
caption

  类型:System.String

  要在消息框的标题栏中显示的文本。
buttons

  类型:System.Windows.Forms.MessageBoxButtons

  MessageBoxButtons 值之一,可指定在消息框中显示哪些按钮。 其中MessageBoxButtons值见下表:  

成员名称
说明
AbortRetryIgnore
消息框包含“中止”、“重试”和“忽略”按钮。
OK
消息框包含“确定”按钮。
OKCancel
消息框包含“确定”和“取消”按钮
RetryCancel
消息框包含“重试”和“取消”按钮。
YesNo
消息框包含“是”和“否”按钮。
YesNoCancel
消息框包含“是”、“否”和“取消”按钮。

icon

  类型:System.Windows.Forms.MessageBoxIcon

  MessageBoxIcon 值之一,它指定在消息框中显示哪个图标。

 

成员名称
说明
Asterisk
该消息框包含一个符号,该符号是由一个圆圈及其中的小写字母 i 组成的。
Error
该消息框包含一个符号,该符号是由一个红色背景的圆圈及其中的白色 X 组成的。
Exclamation
该消息框包含一个符号,该符号是由一个黄色背景的三角形及其中的一个感叹号组
成的。
Hand
该消息框包含一个符号,该符号是由一个红色背景的圆圈及其中的白色 X 组成的。
Information
 
该消息框包含一个符号,该符号是由一个圆圈及其中的小写字母 i 组成的。
None
消息框未包含符号。
Question
该消息框包含一个符号,该符号是由一个圆圈和其中的一个问号组成的。 不再建议使
用问号消息图标,
原因是该图标无法清楚地表示特定类型的消息,并且问号形式的消
息表述可应用于任何消息类型。 此外,
用户还可能将问号消息符号与帮助信息混淆。
因此,请不要在消息框中使用此问号消息符号。 系统继续支
持此符号只是为了向后兼
容。
Stop
该消息框包含一个符号,该符号是由一个红色背景的圆圈及其中的白色 X 组成的。
Warning
该消息框包含一个符号,该符号是由一个黄色背景的三角形及其中的一个感叹号组
成的。


返回值
  类型:System.Windows.Forms.DialogResult

  DialogResult 值之一。

 

7. 字符串前加@:强制不转义,在字符串里面转义字符无效。

 

8. Var关键字:指示编译器根据初始化变量的表达式来推断变量的类型。

 

9. as操作符

取一个对象和一个类型作为其左边和右边的操作数,“运行时”尝试将对象转换成指定的类型。如果转换成功,就返回转换成功的结果。如果转换失败,as表达式的求值结果就是null。

 

10. #region 和 #endregion 

表示一块区域,这样在 Visual Studio 中可以将这块区域的代码折叠起来,便于查看。

 

11.String.IsNullOrEmpty方法

指示指定的字符串是null还是Empty字符串(“”),如果是,则为true。

 

12.int?的变量可赋null而int不可以

 

13.if  (Control.ModifierKeys == Keys.Control)     // 判断是否按下Ctrl键

 

14.ToString("X2") 为C#中的字符串格式控制符

 X为 十六进制 

2为 每次都是两位数

比如 0x0A ,若没有2,就只会输出0xA 

 

15.File类---静态类

提供用于创建、复制、删除、移动和打开单一文件的静态方法,并协助创建FileStream 对象。

(1)File.ReadAllLines("path",Encoding.Default);//读取所有行,返回string[]

(2)File.ReadAllText("path",Encoding.Default);//读取所有文本,返回string 

(3)File.ReadAllBytes("path");//读取文件,返回byte[],把文件作为二进制来处理

(4)File.WriteAllLines("path",new string[4],Encoding.Default);//将string[]按行写入文件

(5)File.WriteAllText("path",“string”);//将字符串全部写入文件

(6)File.AppendAllText();//将string追加到文件

(7)File.Exists(string) ;//确定指定的文件是否存在

(8)File.Delete(string) ;//删除指定的文件---即便文件不存在也不会报异常

(9)File.Copy("source","targetFileName",true) ;//文件拷贝,true表示当文件存在时覆盖,如果不加true,则文件存在报异常。

(10)File.Move("source","target");//移动(剪切),文件的剪切是可以跨磁盘

(11)File.Create("path");//创建文件

  FileInfo // 文件类,用来描述一个文件对象。获取指定目录下的所有文件时,返回一个FileInfo数组。

  产生乱码的原因(只有文本文件才会乱码):文本文件存储时采用的编码,与读取时采用的编码不一致,就会造成乱码问题。解决:采用统一的编码就OK。

  文本文件编码,文本文件有不同的存储方式,将字符串以什么样的形式保存为二进制,这个就是编码,UTF-8、ASCII、Unicode等,如果出现乱码一般就是编码的问题,文本文件相关的函数一般都有一个Encoding类型的参数,取得编码的方法:Encoding.Default(操作系统编码)、Encoding.UTF8、Encoding.GetEncoding("GBK")。

  文本编码(码表)

    ASCII:英文码表,每个字符占1个字节。(正数)

    GB2312:兼容ASCII,包含中文。每个英文占一个字节(正数)。中文占两个字节(负数)。

    GBK:简体中文,兼容gb2312,包含更多汉字。英文占1个字节(正数),中文占两个字节(1个负数,1个可正可负) GB18030

    Big5:繁体中文

    Unicode:国际码表,中文英文都占两个字节。

    UTF-8:国际码表,英文占1个字节,中文占3个字节。

  输出Encoding.GetEncodings(),所有编码

 

16.Directory类---静态类,操作目录(文件夹)

DirectoryInfo // 文件夹的一个“类”,用来描述一个文件夹对象(获取指定目录下的所有目录时返回一个DirectoryInfo数组。)

Path //对文件或目录的路径进行操作的静态类

Stream// 文件流,抽象类

  FileStream // 文件流

  StreamReader // 快速读取文本文件

  StreamWriter // 快速写入文本文件

void Delete(string path, bool recursive) 删除目录,recursive表示是否递归删除,如果recursive为false则只能删除空目录

bool Exists(string path) 判断目录是否存在

string[] GetDirectories(string path) 得到一个目录下的子目录(直接子目录)

string[] GetDirectories(string path, string searchPattern, SearchOption searchOption) 通配符查找目录下的子目录,可以搜索到隐藏文件

static string[] GetFiles(string path) 得到一个目录下的子文件(直接子文件)

string[] GetFiles(string path, string searchPattern, SearchOption searchOption) 通配符查到目录下的文件

DirectoryInfo GetParent(string path) 得到目录的父目录

Directory.move(string path1, string path2) 移动、剪切。只能在同一个磁盘中。目录没有Copy方法。可以使用move()方法实现重命名

Directory.CreateDirectory(string) 创建目录

Directory.Delete(string) 删除目录(如果给定的目录不存在则报异常;直接删除目录的时候,如果目录不为空,则报异常)

 

17.Path类---静态类

获取文件名 Path.GetFileName(string)

获取文件后缀 Path.GetExtension(string)

获取该路径的目录部分 Path.GetDirectoryName(string)

修改文件后缀 string ChangeExtension(string path, string extension)  ----修改支持字符串层面的,没有真的给文件改名

将两个路径合成一个路径 string Combine(string path1, string path2) ---比用加号,可以方便解决不加斜线的问题,自动处理路径分隔符的问题

得到去除扩展名的文件名 string GetFileNameWithoutExension(string path)

得到文件的全路径 string GetFullPath(string path) ---可以根据相对路径获取绝对路径

得到一个唯一的临时文件名 string GetTempFileName()

得到临时文件夹的路径 string GetTempPath()

 

18.字符串转换成byte数组    byte[] bytes=System.Text.Encoding.UTF8.GetBytes(字符串);

byte数组转换成字符串  string newmsg=System.Text.Encoding.UTF8.GetString(bytes);

 

Copyright © 2024 青青绿草
Powered by .NET 8.0 on Kubernetes