zoukankan      html  css  js  c++  java
  • c# 文件IO操作 StreamReader StreamWriter Split 使用

    StreamWriter(String,Boolean)

     若要追加数据到该文件中,则为 true;若要覆盖该文件,则为 false。 如果指定的文件不存在,该参数无效,且构造函数将创建一个新文件。 

    例子要求:

        要求在Txt中存储学生学号、姓名、成绩。支持连续存储若干学生
        支持按学号查询。

    导入命名空间:

    using System.IO;

    写方法:

     public static void reader()
            {
                string num, name, score, message;
                StreamWriter sw = new StreamWriter(@"e:Score.txt", true); //true to append data to the file; false to overwrite the file.
                                                                           //If the specified file does not exist, 
                                                                           //this parameter has no effect, and the constructor creates a new file.
                string flag = "yes";
    
                while (flag == "yes")
                {
                    Console.Write("学号:");
                    num = Console.ReadLine();
    
                    Console.Write("学生姓名:");
                    name = Console.ReadLine();
    
                    Console.Write("成绩:");
                    score = Console.ReadLine();
    
                    message = string.Format("{0},{1},{2}", num, name, score);
                    sw.WriteLine(message);
                    Console.Write("<yes>:继续?");
                    flag = Console.ReadLine();
                }
    
                sw.Close();
            }


    读方法

      //读操作
            public static void reader()
            {          
                string[] stuRecords = new string[3];
                //StringReader sr = new StringReader(@"e:Score.txt");
                StreamReader sr = new StreamReader(@"e:Score.txt");
                string line;
                Console.Write("请输入要查询的学号:");
                string selectNum = Console.ReadLine();
    
                //int count=0;
                while ((line = sr.ReadLine()) != null)
                {
                    stuRecords = line.Split(',');
                    if (stuRecords[0] == selectNum)
                    {
                        Console.WriteLine(stuRecords[2]);
                        break;
                    }
                }
                if (line==null)
                {
                    Console.WriteLine("查无此人");
                }
                sr.Close();
                Console.ReadKey();
            }


    StreamWrite()概述

    StreamWriter类
       实现一个TextWriter,使其以一种特定编码向流中写入字符
    原型:
      [SerializableAttribute]
        [ComVisibleAttribute(true)]
        public class StreamWriter : TextWriter
        默认使用UTF8Encoding的实例,不是线程安全的
    看一下构造函数原型:
        StreamWriter(Stream) 用其所长UTF-8编码及缓冲区大小,为指定的流初始化StreamWriter类的一个新实例.
        StreamWriter(String)   使用默认编码和缓冲区大小,为指定路径上的指定文件初始化StreamWriter类的新实例.
        StreamWriter(Stream,Encoding) 使用指定的编码及默认缓冲区大小,为指定的流初始化类的新实例
        StreamWriter(String,Boolean) 使用默认编码和缓冲区大小,为指定路径上的指定文件初始化 StreamWriter 类的新实例。如果该文件存在,则可以将其覆盖或向其追加。如果该文件不存在,则此构造函数将创建一个新文件。
        StreamWriter(Stream,Encoding,Int32) 用指定的编码及缓冲区大小,为指定的流初始化 StreamWriter 类的新实例。
        StreamWriter(String,Boolean,Encoding) 使用指定编码和默认缓冲区大小,为指定路径上的指定文件初始化 StreamWriter 类的新实例。如果该文件存在,则可以将其覆盖或向其追加。如果该文件不存在,则此构造函数将创建一个新文件。
        StreamWriter(String,Boolean,Encoding,Int32) 使用指定编码和缓冲区大小,为指定路径上的指定文件初始化 StreamWriter 类的新实例。如果该文件存

    StreamReader同上述,参考自微软开发平台



  • 相关阅读:
    ActiveMQ中JMS的可靠性机制
    ActiveMQ中Broker的应用与启动方式
    ActiveMQ支持的传输协议
    ActiveMQ常见消息类型
    Oracle体系结构及备份(十六)——bg-ckpt
    PHP自学之路---雇员管理系统(1)
    UVa11187
    给Android组件添加事件一个很好用的方法
    【项目那些事儿】项目哪些事儿?
    struts2对拦截器使用带实例
  • 原文地址:https://www.cnblogs.com/xiangyangzhu/p/4239793.html
Copyright © 2011-2022 走看看