c,c++,java,php,python,javascript,go,lua文件处理篇
文本文件中的数据都是ASCII码
C语言
1.打开文件
FILE *fp;
fp=fopen('test.txt','a');
返回值 数据 或 NULL
2.关闭文件
fclose(fp);
返回值 0 或 EOF
3.写入一个字符
fputc('test',fp);
返回值 数据 或 EOF
4.读取一个字符
fgetc(fp);
返回值 数据 或 EOF
5.写入一个字符串
fputs('test',fp);
返回值 数据 或 EOF
6.读取一个字符串
fgets(str,n,fp);
返回值 数据 或 EOF
7.将字符串写入并输出到指定文件中
fprintf(fp,"%c",i)
8.将字符串写入并读入到指定文件中
fscanf(fp,"%c",i)
9.读取指定字节数
fread(str,size,count,fp)
str 字符窜
size 指定字节
count 读取次数
10.写入指定字节数
fwrite(str,size,count,fp)
str 字符窜
size 指定字节
count 写入次数
11.文件定位
fseek(fp,位移量,起始点)
起始点: 0 文件首
1 当前位置
2 文件末尾
rewind(fp) //使文件指针重新返回文件开头
frell(fp) //获取文件位置
打开文件方式
文件打开方式 | 含义 |
---|---|
r(只读) | 打开一个文件,只允许读数据 |
w(只写) | 打开或建立一个文本文件,只允许写数据 |
a(追加) | 打开一个文本文件,并在文件末尾写数据 |
rb(只读) | 打开一个二进制文件,只允许读数据 |
wb(只写) | 打开或建立一个二进制文本文件,只允许写数据 |
ab(追加) | 打开一个二进制文本文件,并在文件末尾写数据 |
r+(读写) | 打开一个文本文件,允许读和写 |
w+(读写) | 打开或建立一个文本文件,允许读和写 |
a+(读写) | 打开一个文本文件,允许读,或在文件末尾追加数据 |
rb+(读写) | 打开一个二进制文本文件,允许读和写 |
wb+(读写) | 打开或建立一个二进制文本文件,允许读和写 |
ab+(读写) | 打开一个二进制文本文件,允许读,或在文件末尾追加数据 |
c++
#include <iostream>
#include <fstream>
<文件流类> <文件流对象名> (<文件名>,<打开方式>)
1.文件流
ifstream ifile; //输入流
ofstream ofile; //输出流
fstream iofile; //输入输出流
2.打开文件
写入方式打开文件
fstream ofile;
ofile.open('test.txt',ios::out)
读取方式打开文件
fstream ifile;
ifile.open('test.txt',ios::in)
二进制写入方式打开文件
fstream ofile;
ofile.open('test.txt',ios::binary|ios::out)
二进制读取方式打开文件
fstream ifile;
ifile.open('test.txt',ios::binary|ios::in)
追加写入方式打开文件
fstream ofile;
ofile.open('test.txt',ios::app|ios::out)
3.关闭文件
close();
4.写入文件
write()
5.文件定位--获取文件指针位置
tellp(位移量,起始点) //输出方式
tellg(位移量,起始点) //输入方式
文件定位--设置文件指针位置
seekp(位移量,起始点)
seekg(位移量,起始点)
起始点:ios::beg 文件首
ios::cur 当前位置
ios::end 文件末尾
6.刷新流
flush()
7.写入一个字节到文件中
put()
8.读取是否到结尾
eof()
9.读取一个字符
get()
10.写入失败
fail()