现在的位置: 首页 > 综合 > 正文

C#程序设计技巧小结

2013年04月02日 ⁄ 综合 ⁄ 共 1997字 ⁄ 字号 评论关闭
获取文件的版本信息:

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;

抱歉!评论已关闭.