Visual C#程序设计技巧小结

发表于:2007-07-14来源:作者:点击数: 标签:
Visual C#程序设计技巧小结: 获取文件的版本信息: FileVersionInfo myFileVersionInfo1 = FileVersionInfo.GetVersionInfo("D:\\TEST.DLL"); textBox1.Text="版本号: " + myFileVersionInfo1.FileVersion; 更改文件属性,删除只读文件: 下例欲将E:\test.tx
Visual C#程序设计技巧小结:   获取文件的版本信息:

FileVersionInfo myFileVersionInfo1 = FileVersionInfo.GetVersionInfo("D:\\TEST.DLL");
textBox1.Text="版本号: " + myFileVersionInfo1.FileVersion;

   更改文件属性,删除只读文件:

   下例欲将E:\test.txt文件拷贝至D:\tmp\test.txt,但D:\tmp\test.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;

原文转自:http://www.ltesting.net