using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.io;
namespace example
{
class program
{
static void main(string[] args)
{
//////////////// 文件打开 下面的代码打开d:wang.txt文件,并且向文件中写入”hello”
filestream textfile = file.open(@”d:wang.txt”, filemode.append);//以append方式打开文件(如果不存在,会创建)
byte[] info = { (byte)’h’, (byte)’e’, (byte)’l’, (byte)’l’, (byte)’o’ };//要写入的信息
textfile.write(info, 0, info.length);//write方法只能写入byte数组
textfile.close();//关闭文件流
////////////////////// 文件创建
filestream newtext = file.create(@”d:ewtext.txt”);//创建文件
newtext.close();//关闭文件
//////////////////// 删除文件
file.delete(@”d:ewtext.txt”);
////////////////// 文件复制 如果目标文件存在,不允许复制(就是不能覆盖同名文件)
//file.copy(@”d:wang.txt”, @”d:copywang.txt”);
//////////////// 文件移动 只能在同一个盘中移动 如果目标路径不正确,不能移动
// file.move(@”d:copywang.txt”, @”d:movewang.txt”);
//////////////////////// 设置文件属性为 只读,隐藏
//file.setattributes(@”d:copywang.txt”, fileattributes.readonly | fileattributes.hidden);//同时满足多个属性,必须用位或(|).
/////////////// 判断文件是不是存在
if (file.exists(@”d:copywang.txt”))//如果存在 即便是隐藏的文件也可以找到
{
file.setattributes(@”d:copywang.txt”, fileattributes.readonly);//重新设置属性后,隐藏的文件也会显示出来,只要不加hidden属性
console.writeline(“找到文件copywang.txt”);
}
else
{
console.writeline(“没有找到文件copywang.txt”);
}
/*
此外,file类对于text文本提供了更多的支持。
?appendtext:将文本追加到现有文件
?createtext:为写入文本创建或打开新文件
?opentext:打开现有文本文件以进行读取
但上述方法主要对utf-8的编码文本进行操作,从而显得不够灵活。在这里推荐读者使用下面的代码对txt文件进行操作。
?对txt文件进行“读”操作,示例代码如下:
*/
streamreader textreader = new streamreader(@”d:wang.txt”, system.text.encoding.default);//以默认编码方式打开文件
string str = textreader.readtoend();//读取文件
console.writeline(“使用streamreader读取文本内容:” + str);
textreader.close();
//////////////////对txt文件写内容
streamwriter textwriter = new streamwriter(@”d:wang.txt”);
str = “learn .net”;
textwriter.write(str);
textwriter.close();
/*
system.io.directory类和system.directoryinfo类
主要提供关于目录的各种操作,使用时需要引用system.io命名空间。下面通过程序实例来介绍其主要属性和方法。
*/
directory.createdirectory(@”d:wang1wang”);//创建目录(文件夹)如果已经存在,则保持;还可以一次创建多级目录
/////////////////////////////////目录属性设置方法
directoryinfo dirinfo = new directoryinfo(@”d:wang1wang”);//
dirinfo.attributes = fileattributes.hidden;// | fileattributes.readonly;//设置文件夹属性
/////////////////delete方法的第二个参数为bool类型,它可以决定是否删除非空目录。
//如果该参数值为true,将删除整个目录,即使该目录下有文件或子目录;若为false,则仅当目录为空时才可删除。
//directory.delete(@”d:wang1″, true);//如果文件设置为readonly,则不能删除
//directory.move(@”d:wang1″, @”d:wang3″);//把文件夹wang1移动到文件夹wang3中,相当于把wang1删除,创建一个wang3,再把内容移动到wang3
string[] directories = directory.getdirectories(@”d:wang3″);//获得文件夹wang3的目录
foreach (string var in directories)
console.writeline(var);
string[] files = directory.getfiles(@”d:wang1″);//获取文件夹wang1下面的所有文件
foreach (string var in files)
console.writeline(var);
if (directory.exists(@”d:wang1″))
console.writeline(“文件夹wang1存在”);
/*
在c#中 “”是特殊字符,要表示它的话需要使用“\”。由于这种写法不方便,c#语言提供了@对其简化。只要在字符串前加上@即可直接使用“”。
所以上面的路径在c#中应该表示为“book”,@“mpook”,@“c:mpook”。
*/
console.readline();
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2554251.html