1.没有直接删除功能.这跟文件系统的实现有关,删除效率极低.2.如果文件不是很大,可以不用中间文件,读进内存删除操作后,把原文件关闭,再打开,再写回原文件就行了.3.文件里面的内容不能直接删除,但可以覆盖,如果你删除文件中的一段内容,又刚好在这个位置写入等长度的新内容,就可以实现.这也是很多下载工具采用的方法.下载时先建一个跟要下载的文件一样大小的文件.然后再把下载的内容覆盖进去.效率可以提高很多.也就是说,不能删除"cdsfd" ,但可以直接就把它改成"12345"
流,简单来说就是建立在面向对象基础上的一种抽象的处理数据的工具。在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等,程序员是对流进行所有操作的,而不用关心流的另一头数据的真正流向。流不但可以处理文件,还可以处理动态内存、网络数据等多种数据形式。如果你对流的操作非常熟练,在程序中利用流的方便性,写起程序会大大提高效率的。
在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括文件I/O,stream这个类有两个重要的运算符:
1、插入器(<<)
向流输出数据。比如说系统有一个默认的标准输出流(cout),一般情况下就是指的显示器,所以,
cout<<"WriteStdout"<<'n';
就表示把字符串"Write Stdout"和换行字符('n')输出到标准输出流。
2、析取器(>>)
从流中输入数据。比如说系统有一个默认的标准输入流(cin),一般情况下就是指的键盘,所以,cin>>x;就表示从标准输入流中读取一个指定类型(即变量x的类型)的数据。
在C++中,对文件的操作是通过stream的子类fstream(file stream)来实现的,所以,要用这种方式操作文件,就必须加入头文件fstream.h。
附件为使用C++文件流实现删除数据的功能!
貌似没有。从来没试过。