WPF 读写TxT文件

原文:WPF 读写TxT文件

文/嶽永鹏

WPF 中读取和写入TxT 是经常性的操作,本篇将从详细演示WPF如何读取和写入TxT文件。

首先,TxT文件希望逐行读取,并将每行读取到的数据作为一个数组的一个元素,因此需要引入List<string> 数据类型。且看代码:

 public List<string> OpenTxt(TextBox tbx)
        {
            List<string> txt = new List<string>();
            OpenFileDialog openFile = new OpenFileDialog();
            openFile.Filter = "文本文件(*.txt)|*.txt|(*.rtf)|*.rtf";
            if (openFile.ShowDialog() == true)
            {
                tbx.Text = "";
                using (StreamReader sr = new StreamReader(openFile.FileName, Encoding.Default))
                {
                    int lineCount = 0;
                    while (sr.Peek() > 0)
                    {
                        lineCount++;
                        string temp = sr.ReadLine();
                        txt.Add(temp);
                    }
                }

            }
            return txt;
        }

View Code

其中

 1  using (StreamReader sr = new StreamReader(openFile.FileName, Encoding.Default))
 2 {
 3         int lineCount = 0;
 4         while (sr.Peek() > 0)
 5               {
 6                     lineCount++;
 7                     string temp = sr.ReadLine();
 8                     txt.Add(temp);
 9                }
10 }

StreamReader 是以流的方式逐行将TxT内容保存到List<string> txt中。

其次,对TxT文件的写入操作,也是将数组List<string> 中的每个元素逐行写入到TxT中,并保存为.txt文件。且看代码:

 1 SaveFileDialog sf = new SaveFileDialog();
 2                 sf.Title = "Save text Files";
 3                 sf.DefaultExt = "txt";
 4                 sf.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
 5                 sf.FilterIndex = 1;
 6                 sf.RestoreDirectory = true;
 7                 if ((bool)sf.ShowDialog())
 8                 {
 9                     using (FileStream fs = new FileStream(sf.FileName, FileMode.Create))
10                     {
11                         using (StreamWriter sw = new StreamWriter(fs, Encoding.Default))
12                         {
13                             for (int i = 0; i < txt.Count; i++)
14                             {
15                                 sw.WriteLine(txt[i]);
16                             }
17                         }
18                     }
19
20                 }

View Code

而在这之中,相对于读入TxT文件相比,在写的时候,多用到了 FileStream类。

 

时间: 2024-09-18 15:17:21

WPF 读写TxT文件的相关文章

Python中使用不同编码读写txt文件详解

  这篇文章主要介绍了Python中使用不同编码读写txt文件详解,本文给出不同编码下的读写文件代码方法,需要的朋友可以参考下 代码如下: import os import codecs filenames=os.listdir(os.getcwd()) out=file("name.txt","w") for filename in filenames: out.write(filename.decode("gb2312").encode(&q

java开发之读写txt文件操作的实现_java

项目结构: 开发之读写txt文件操作的实现_java-java实现读写分离"> 运行效果: ======================================================== 下面是代码部分: ======================================================== /Text/src/com/b510/txt/MyFile.java 复制代码 代码如下: package com.b510.txt;  import ja

C#简单读写txt文件的方法_C#教程

本文实例讲述了C#简单读写txt文件的方法.分享给大家供大家参考,具体如下: //write txt StringBuilder builder = new StringBuilder(); FileStream fs = new FileStream(saveFileName, FileMode.Create); StreamWriter sw = new StreamWriter(fs, Encoding.Default); for (int i = 0; i < ds.Tables[0].

python 读写txt文件 json文件的实现方法_python

首先第一步,打开文件,有两个函数可供选择:open() 和  file() ①. f = open('file.txt','w')    ...  file.close()    ②. f = file('file.json','r')    ... file.close()#记得打开文件时最后不要忘记关闭! open() 和 file() 都是Python的内建函数,返回一个文件对象,具有相同的功能,可以任意替换.使用语法为: f = open(fileName, access_mode='r

asp.net读写txt文件实例

asp教程.net读写txt文件实例   <%@ page language="vb" %> <html>    <head>       <title>unload event example</title>       <script runat="server">          dim thefile as system.io.streamreader          sub pag

Java读写txt文件时防止中文乱码问题出现的方法介绍_java

问题:在用Java程序进行读写含中文的txt文件时,经常会出现读出或写入的内容会出现乱码.原因其实很简单,就是系统的编码和程序的编码采用了不同的编码格式.通常,假如自己不修改的话,windows自身采用的编码格式是gbk(而gbk和gb2312基本上是一样的编码方式),而IDE中Encode不修改的话,默认是utf-8的编码,这就是为什么会出现乱码的原因.当在OS下手工创建并写入的txt文件(gbk),用程序直接去读(utf-8),就会乱码.为了避免可能的中文乱码问题,最好在文件写入和读出的时候

PHP fopen函数读写txt文件实现程序

简单的参考fopen函数 fopen() 函数打开文件或者 URL. 如果打开失败,本函数返回 FALSE. 语法 fopen(filename,mode,include_path,context) 实例1 创建一个文件的例子:  代码如下 复制代码 <?php if(!file_exists("test.txt")){     //如果文件不存在(默认为当前目录下)     $fh = fopen("test.txt","w");    

如何使用c#读取Infopath内feild,然后写入到一个txt文件中?

问题描述 如何使用c#读取Infopath内feild,然后写入到一个txt文件中? 如何使用c#读取Infopath内feild,然后写入到一个txt文件中? 请大神帮忙解答下?谢谢! 解决方案 infopath本身就是一个xml编辑器而已.所以你的问题其实就是用C#读取xml文件. 解决方案二: C# 4.0新增了两个方法:File.ReadAllText File.WriteAllText,只要一行,就可以把文件读取到字符串,以及把字符串写入文件 解决方案三: 利用Microsoft Of

c语言-如何用C语言实现.txt文件中内容的添加

问题描述 如何用C语言实现.txt文件中内容的添加 问题,如何用C语言中append()函数实现5.9.13行的功能:依次将1.2.3写入到D盘ccc.txt中. void main(){ ............1 int a=4,b=2: ............2 if(a*b==8) ............3 { ............4 //将1写入D盘ccc.txt文件中 ............5 } ............6 if(a-b==2) ............7