C#每天抄一点(38):创建文本+输入内容
10 Nov 2011这首曲子听了近3年,一直难以释怀,无论哪里,总会想起它。
FileStream:
FileStream 类
公开以文件为主的 Stream,既支持同步读写操作,也支持异步读写操作。
命名空间:System.IO程序集:mscorlib(在 mscorlib.dll 中)
使用 FileStream 类对文件系统上的文件进行读取、写入、打开和关闭操作,并对其他与文件相关的操作系统句柄进行操作,如管道、标准输入和标准输出。读写操作可以指定为同步或异步操作。FileStream 对输入输出进行缓冲,从而提高性能。FileStream 对象支持使用 Seek 方法对文件进行随机访问。Seek 允许将读取/写入位置移动到文件中的任意位置。这是通过字节偏移参考点参数完成的。字节偏移量是相对于查找参考点而言的,该参考点可以是基础文件的开始、当前位置或结尾,分别由 SeekOrigin 类的三个属性表示。
01 /*
02 * 由SharpDevelop创建。
03 * 用户: Flowerowl
04 * 日期: 2011/11/10
05 * 时间: 13:10
06 *
07 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
08 */
09 using System;
10 using System.Collections.Generic;
11 using System.Drawing;
12 using System.Windows.Forms;
13 using System.IO;
14 using System.Data;
15 namespace Lazy38_创建文本_输入内容
16 {
17
18 public partial class MainForm : Form
19 {
20 public MainForm()
21 {
22
23 InitializeComponent();
24
25 }
26
27 void Button1Click(object sender, EventArgs e)
28 {
29 if(textBox1.Text==“”)
30 {
31 MessageBox.Show(this,“文件名称不能为空~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
32 }
33 else if(File.Exists(Application.StartupPath+“\\”+textBox1.Text))
34 //确定指定的文件是否存在。
35 {
36 MessageBox.Show(this,“该文件已经存在啦~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
37 }
38 else
39 {
40 FileStream Lazy_fs=File.Create(Application.StartupPath+“\\”+textBox1.Text);
41 //在指定路径中创建文件。
42 Lazy_fs.Close();
43 //1、关闭流释放托管内存,使垃圾回收器可以释放对应的内存块。
44 //2、在执行close方法后数据才可以真正的写入磁盘文件。
45 MessageBox.Show(this,“成功创建文件~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
46
47 }
48 }
49
50 void Button2Click(object sender, EventArgs e)
51 {
52 if(textBox2.Text==“”)
53 {
54 MessageBox.Show(this,“文件名称不能为空哦~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
55 }
56 else
57 {
58 StreamWriter Lazy_sw=new StreamWriter(Application.StartupPath+“\\”+textBox1.Text);
59 Lazy_sw.Write(textBox2.Text);
60 Lazy_sw.Flush();
61 //清理当前编写器的所有缓冲区,并使所有缓冲数据写入基础流。
62 //通过Flush,你可以控制何时把缓冲区的数据刷到底层设备上。
63 //否则,只有缓冲区满的时候,以及Close的时候才会冲缓冲区。
64 Lazy_sw.Close();
65 //StreamWriter.Close()会调用StreamWriter.Dispose (true)
66 //而Dispose (true)会释放托管和非托管资源。
67 MessageBox.Show(this,“成功向文件写入内容~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
68
69 }
70 }
71 }
72 }
02 * 由SharpDevelop创建。
03 * 用户: Flowerowl
04 * 日期: 2011/11/10
05 * 时间: 13:10
06 *
07 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
08 */
09 using System;
10 using System.Collections.Generic;
11 using System.Drawing;
12 using System.Windows.Forms;
13 using System.IO;
14 using System.Data;
15 namespace Lazy38_创建文本_输入内容
16 {
17
18 public partial class MainForm : Form
19 {
20 public MainForm()
21 {
22
23 InitializeComponent();
24
25 }
26
27 void Button1Click(object sender, EventArgs e)
28 {
29 if(textBox1.Text==“”)
30 {
31 MessageBox.Show(this,“文件名称不能为空~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
32 }
33 else if(File.Exists(Application.StartupPath+“\\”+textBox1.Text))
34 //确定指定的文件是否存在。
35 {
36 MessageBox.Show(this,“该文件已经存在啦~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
37 }
38 else
39 {
40 FileStream Lazy_fs=File.Create(Application.StartupPath+“\\”+textBox1.Text);
41 //在指定路径中创建文件。
42 Lazy_fs.Close();
43 //1、关闭流释放托管内存,使垃圾回收器可以释放对应的内存块。
44 //2、在执行close方法后数据才可以真正的写入磁盘文件。
45 MessageBox.Show(this,“成功创建文件~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
46
47 }
48 }
49
50 void Button2Click(object sender, EventArgs e)
51 {
52 if(textBox2.Text==“”)
53 {
54 MessageBox.Show(this,“文件名称不能为空哦~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
55 }
56 else
57 {
58 StreamWriter Lazy_sw=new StreamWriter(Application.StartupPath+“\\”+textBox1.Text);
59 Lazy_sw.Write(textBox2.Text);
60 Lazy_sw.Flush();
61 //清理当前编写器的所有缓冲区,并使所有缓冲数据写入基础流。
62 //通过Flush,你可以控制何时把缓冲区的数据刷到底层设备上。
63 //否则,只有缓冲区满的时候,以及Close的时候才会冲缓冲区。
64 Lazy_sw.Close();
65 //StreamWriter.Close()会调用StreamWriter.Dispose (true)
66 //而Dispose (true)会释放托管和非托管资源。
67 MessageBox.Show(this,“成功向文件写入内容~”,“提示~”,MessageBoxButtons.OK,MessageBoxIcon.Information);
68
69 }
70 }
71 }
72 }
转载请注明:于哲的博客 » C#每天抄一点(38):创建文本+输入内容