(转)txt读写 操作封装

[code]csharpcode:

using UnityEngine;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System;
public class TextCreatWrite : MonoBehaviour {

	/// <summary>
	/// 判断一个文件是否存在.
	/// </summary>
	/// <returns><c>true</c>, if exists was filed, <c>false</c> otherwise.</returns>
	/// <param name="path">Path.</param>
	public static bool FileExists(string path)
	{
		if(File.Exists(path))
			//存在
			return true;
		else
			//不存在
			return false;
	}

	/// <summary>
	/// 创建一个文件,文件存在就不创建.
	/// </summary>
	/// <param name="path">Path.</param>
	public static void CreatFile(string path)
	{
		if (FileExists (path))   //文件已经存在就返回.
			return;
		// 如果文件不存在,创建文件; 如果存在,覆盖文件
		StreamWriter sw2 = new StreamWriter(path, false, Encoding.UTF8);
		sw2.Close ();
	}

	/// <summary>
	/// 在文件末尾追加写入数据,然后在数据后面添加换行符.
	/// </summary>
	/// <param name="path">路径.</param>
	/// <param name="date">要写入的字符串.</param>
	public static void AppendTextAddLineFeed(string path,string date)
	{
		// true 是 append text, false 为覆盖原文件
		StreamWriter sw2 = new StreamWriter(path, true, Encoding.UTF8);
		sw2.WriteLine (date);
		sw2.Close ();
	}

	/// <summary>
	///表示换行符的string.
	/// </summary>
	/// <returns>The line feed.</returns>
	public static string GetLineFeed()
	{
		//utf-8里换行的十六进制是 0d 0a
		//用转义字符表示\n\r
		int value1 = Convert.ToInt32("0D", 16);
		int value2 = Convert.ToInt32("0A", 16);
		string stringValue = Char.ConvertFromUtf32(value1);
		stringValue+=Char.ConvertFromUtf32(value2);
		return stringValue;
	}

	/// <summary>
	/// 把16进制转成string格式.
	/// </summary>
	/// <returns>The tostring.</returns>
	/// <param name="str16">要转换的16进制字符,比如"0d"是回车.</param>
	static public string ConvertHex16To_string(string str16)
	{
		int value1 = Convert.ToInt32(str16, 16);
		string stringValue = Char.ConvertFromUtf32(value1);
		return stringValue;
	}

	/// <summary>
	/// 16进制转char.
	/// </summary>
	/// <returns>The to char.</returns>
	/// <param name="str16">要转换的16进制字符,比如"0d"是回车".</param>
	static public char ConvertHex16ToChar(string str16)
	{
		int value1 = Convert.ToInt32(str16, 16);
		return (char)value1;
	}

	/// <summary>
	/// 读取文件,返回每行数据集合List<string>.
	/// </summary>
	/// <returns>The all lines.</returns>
	/// <param name="path">路径.</param>
	static public List<string> ReadAllLines(string path)
	{
		// 也可以指定编码方式
		string[] strs2 = File.ReadAllLines(path, Encoding.UTF8);
		return new List<string> (strs2);
	}
}
时间: 2024-10-22 05:55:41

(转)txt读写 操作封装的相关文章

UNICODE环境下读写txt文件操作

内容转载自http://blog.sina.com.cn/s/blog_5d2bad130100t0x9.html UNICODE环境下读写txt文件操作 (2011-07-26 17:40:05) 标签: 杂谈 分类: MFC程序设计 自己动手整理了一下,写了几个函数,用于UNICODE环境下对txt文本文件的操作,针对txt文本的ANSIC编码格式,进行了字符编码格式的转换.***********************************************************

oracle读写文件--利用utl_file包对磁盘文件的读写操作

摘要: 用户提出一个需求,即ORACLE中的一个表存储了照片信息,字段类型为BLOB,要求能导出成文件形式. 本想写个C#程序来做,后来想起ORACLE有很多包,功能很好很强大,于是网上参考了些文章完成了. 主要是用了ORACLE的两个包:UTL_FILE和DBMS_LOB. 实现过程: 第一步:以管理员用户登陆设置可操作目录 --CREATE DIRECTORY privilege is granted only to SYS and SYSTEM by default. create or

java文件读写操作类

借鉴了项目以前的文件写入功能,实现了对文件读写操作的封装 仅仅需要在读写方法传入路径即可(可以是绝对或相对路径) 以后使用时,可以在此基础上改进,比如: 写操作: 1,对java GUI中文本框中的内容进行捕获,放在txt文本文档中 2,对各种类型数据都以字符串的形式逐行写入 3,对全局数组的内容进行写入 读操作: 获取文件行数 对逐行字符串型数据进行类型转换,放入二维数组中 为后面算法处理提供入口,但是要小心的是:不可以将行数用全局变量做计数器,否则每次读入是全局变量累加出错,应重新开始读取

最全java的读写操作(转载)

Java的I/O系统中的输入输出流为我们进行开发提供了很多便利,利用其强大的封装性,通过各种组合能够实现多种多样的功能.但是Java提供了很多输入输出流类,在概念和使用上有很多相似之处,所以给很多开发者带来了困扰,何时应该用何种输入输出流类成为一个问题. 以下即是Java输入输出流类的介绍,并附有实例说明,对各个类的用法都有简要分析. 输入输出流类介绍       1.stream代表的是任何有能力产出数据的数据源,或是任何有能力接收数据的接收源.在Java的IO中,所有的stream(包括In

Go语言系列(七)- 读写操作

终端读写 1. 终端读写 操作终端相关文件句柄常量 os.Stdin:标准输入 os.Stdout:标准输出 os.Stderr:标准错误输出 2. 终端读写示例 package main import ( "fmt" ) var ( firstName, lastName, s string i int f float32 input = "56.12 / 5212 / Go" format = "%f / %d / %s" ) func ma

文件的新建、定位、截短和读写操作

1.创建一个新文件,创建新文件除了可以使用open函数之外还可以用creat()函数. 创建文件函数 creat(const char * pathname, mode_t mode) 头文件 :#include <fcntl.h> 参数说明:第一个参数pathname同open函数的第一个参数具有同样的意义,区别在于这是需要创建的文件的地址而不是需要打开文件的地址,第二个参数mode是新建文件的访问权限. 返回值:成功返回1,失败返回-1. 函数说明:creat()函数能够创建一个新的文件,

对SD卡的读写操作-保存用户登录密码

import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStreamReader; import android.content.Context; import android.os.Environment; public class Fileservice { /** * 存储用

php学习基础-文件系统(二) 文件读写操作、文件资源处理

一.文件的打开与关闭 /* *读取文件中的内容 * file_get_contents(); //php5以上 * file() * readfile(); * * 不足:全部读取, 不能读取部分,也不能指定的区域 * * fopen() * fread() * fgetc() * fgets() * * * * * 写入文件 * file_put_contents("URL", "内容字符串"); //php5以上 * 如果文件不存在,则创建,并写入内容 * 如果

使用shell脚本简单模拟对特定文件同时读写操作

使用shell脚本简单模拟对特定文件同时读写操作文件内容的格式:field1    ,       field2    , field3    ,       field4以,为分隔符,但是存在空格. 脚本用法如下: ./check_write_read.sh 10 输出结果: Thu Apr 27 19:59:44 CST 2017:Read operation finished 670 Thu Apr 27 19:59:44 CST 2017:Write operation finished