Visual C#程序设计技巧小结
获取文件的版本信息:
FileVersionInfo myFileVersionInfo1 = FileVersionInfo.GetVersionInfo("D:\TEST.DLL"); textBox1.Text="版本号: " + myFileVersionInfo1.FileVersion; |
更改文件属性,删除只读文件:
下例欲将E: est.txt文件拷贝至D: mp est.txt,但D: mp est.txt已经存在。
//File.Copy(sourceFile,destinationFile,true); 用来拷贝文件 //当destinationFile已经存在时,无法将文件file1拷贝到目标文件, //因此先删除destination文件,File.Delete()方法不能删除只读文件, //因此,如果文件属性为只读(Attributes属性中会包含有"ReadOnly"), //先把文件属性重置为Normal,然后再删除: string file1="E:\test.txt"; string destinationFile="d:\tmp\test.txt"; if(File.Exists(destinationFile)) { FileInfo fi=new FileInfo(destinationFile); if(fi.Attributes.ToString().IndexOf("ReadOnly")!=-1) fi.Attributes=FileAttributes.Normal; File.Delete(destinationFile); } File.Copy(file1,destinationFile,true); |
C#中字符串的格式化及转换成数值的方法
字符串转换成数字,比如"1234"转换成数字1234:
string str="1234"; int i=Convert.ToInt32(str); |
格式化字符串,向长度小于30的字符串末尾添加特定字符,补足n个字符,使用String类的PadRight(int,char)方法:
String str="1234"; str=str.PadRight(30, ) //向长度小于30的字符串末尾添加空格,补足30个字符 |
按行读写文件
判断文件是否存在:File.Exists(string filePath)
判断目录是否存在:Directory.Exists("D:\LastestVersion")
按行读取文件:
int fileCount=0; // Open the file just specified such that no one else can use it. StreamReader sr = new StreamReader(textBox1.Text.Trim()); while(sr.Peek() > -1)//StreamReader.Peek()返回下一个可用字符,但不使用它 { listBox1.Items.Add(sr.ReadLine()); fileCount++; } sr.Close(); |
按行写入文件:
StreamWriter sw = new StreamWriter("D:\result.txt"); for(int i=0;i<10;i++) { sw.WriteLine("这是第"+i.ToString()+"行数据"); } |
文件目录对话框的使用
文件对话框即过滤条件的使用:
string resultFile=""; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = "D:\Patch" ; openFileDialog1.Filter = "All files (*.*)|*.*|txt files (*.txt)|*.txt" ; openFileDialog1.FilterIndex = 2 ; openFileDialog1.RestoreDirectory = true ; if(openFileDialog1.ShowDialog() == DialogResult.OK) resultFile=openFileDialog1.FileName; |
目录对话框的使用:
string resultFolder=""; FolderBrowserDialog openFolderDialog1=new FolderBrowserDialog(); openFolderDialog1.RootFolder=Environment.SpecialFolder.MyComputer; if(openFolderDialog1.ShowDialog()==DialogResult.OK) resultFolder=openFolderDialog1.SelectedPath; |
补充:软件开发 , C# ,