精华内容
下载资源
问答
  • Matlab读取文件函数总结

    万次阅读 多人点赞 2017-12-17 20:21:59
    Matlab读取文件函数总结 1. load读取方式 a.基本说明: 只能读取数值数据,不能读取含文本的数据;日期按数值读取。 b.调用方式: a=load(filename); c. 有无分隔符限制: 无需输入分隔符,可自动识别...

    Matlab读取文件函数总结

    1. load读取方式

    a.基本说明:

    只能读取数值数据,不能读取含文本的数据;日期按数值读取。

    b.调用方式:

    a=load(filename);

    c. 有无分隔符限制:

    无需输入分隔符,可自动识别空格、逗号、分号、制表符。

    d. 能否自定义读取范围:

    不能。

    e. 适用文件类型:

    txt、csv。

    2. importdata读取方式

    a.基本说明:

    可读取数值数据和含文本的数据,但是要求文本在数据的第一行或第一列。返回值分为数值部分(data)和文本部分(textdata)

    b.调用方式:

    a=importdata(filename,delm,nheaderlines);

    filename:文件名(如果文件在其他路径下,文件名前需加所在路径。)

    delm:分隔符

    nheaderlines:从第nheaderlines+1行开始读取数值数据。

    c.有无分隔符限制:

    多列数据时需输入分隔符。若不输入分隔符,整行会被作为字符串放入一列。

    d.能否自定义读取范围:

    可从某一行开始读取数值数据。若使用importdata按钮,则可自定义读取范围和设置数据类型。

    f. 适用文件类型

    txt、xls、xlsx、csv。

    3. textscan读取方式

    a.基本说明:

    可对列按照自定义格式读取数据,必须输入每列的读取格式,可跳过某个列或几列。按数值读取时,缺少值以NaN填补;按字符读取时,缺少值以空格填补。返回值按列放入元胞数组。

    b.调用方式:

    c =textscan(fid,'format',n,'param',value)

    fid:文件指针。使用textscan函数时需先使用fopen函数打开数据文件,返回给fid文件若不再使用,则需用fclose(fid)关闭文件。

    ‘format’:定义每列的读取格式。例如%s表示按字符串读取、%d表示按整数读取、%D按日期读取、%*表示跳过该列。level%u8表示将level1读取成1,去掉level。

    ‘param’,value:这两个参数成对出现。例如’Delimiter’,’s’表示按分隔符为’,’进行读取。

    c.有无分隔符限制

    可自定义分隔符,不是必须的。

    d.能否自定义读取范围:

    可跳过某列或某几列数据,但要保证跳过的列是可读的,否则读取也会出错。

    e.适用文件类型

            txt、csv

    4. textread读取方式

    a.基本说明:

    适用于格式统一的txt文件的一次性大批量读取。textread读取某个文件后,下次再用,textread读取这个文件时,还是会从文件头开始读取。

    b.调用方式:

    [A,B,C,...] =textread(filename,format)

    [A,B,C,...] =textread(filename,format,N,’headerlines’,M)

    Filename:文件名;

    Format:就是要读取的格式;

    A,B,C…:从文件中读取到的数据。中括号里面变量的个数必须和format中定义的个数相同。

    N:表示读取的次数,每次读取一行。

    Headerlines:表示从第M+1行开始读入。

    5. dlmread读取方式

    a. 基本说明:

    只能读取数值数据。如文件中含有文本,需使用range参数跳过。返回值为矩阵。

    b. 调用方式:

    result =dlmread(filename,delimiter,range);

    filename:文件名。

    delimiter:分隔符。

    range:文件读取范围,格式为[R1 C1 R2 C2]。

    c. 有无分隔符限制:

    可自定义分隔符,不是必须的。

    d. 能否自定义读取范围:

    通过设置range,选择读取范围。

    e. 适用文件类型

    txt、csv。

    6. xlsread读取方式

    a. 基本说明:

    读取xls文件,可读取含文本的数据,仅能返回数值部分。

    b. 调用方式:

    [num,txt,raw]=xlsread(file,sheet,range);

    file:需要读取的文件。

    sheet:需要读取的表单。

    range:读取范围,格式为’A1:C4’。

    num:返回的数值数据。

    txt:返回的文本数据。

    raw:返回未处理的数据。

    c. 有无分隔符限制

    无需输入分隔符。

    d. 能否自定义读取范围:

    由sheet和range定义读取范围。

    e. 文件适用范围

    xls、xlsx。

    7. csvread读取方式

    a. 基本说明:

    只能读取逗号分隔的数值数据。如文件中含有文本,需使用range参数跳过。

    b.调用方式: m = csvread('filename',r,c,rng);

    filename:文件名字。

    r,c:开始读取的位置

    rng:读取范围,格式为[R1 C1 R2 C2]

    c.有无分隔符限制:

    文件必须以逗号分隔。

    d. 能否自定义读取范围:

    可由r,c ,rng定义读取范围。

    e. 文件适用范围

    txt、csv。

    8. fread读取方式

    该函数读取文件返回的是二进制矩阵。

     

    Matlab写文件函数总结

     

    1. xlswrite读取方式

    a.基本说明:

         用matlab处理数据之后,需要将其保存到EXCEL内,而这必须用到xlswrite函数。

    b.调用方式

    A=xlswrite(filename, M)将矩阵M的数据写入名为filenameExcel文件中。

    B=xlswrite(filename, M, sheet) ;将矩阵M的数据写入文件名为filename中的指定的sheet中。

    C=xlswrite(filename, M, range);将矩阵M中的数据写入文件名为filenameExcel文件中,且由range制定存储的区域,例如'C1:C2'.

    D=xlswrite(filename, M, sheet, range)

    status = xlswrite(filename, ...);返回完成状态值。如果写入成功,则status1;反之写入失败,则status0.

    2. dlmwrite读取方式

    a.基本说明:

    将矩阵写入ASCII分隔的文件。dlmwrite函数不接受输CELLM要导出一个单元格数组中只包含数字数据,使用cell2mat矩阵转换为数字的单元格,然后再调用dlmwrite数组。

    b.调用方式

    1)dlmwrite(filename, M)

    使用默认的分隔符(')将矩阵M写入ASCII格式的文件中。在目标文件filname中,数据是从第一行的第一列开始写的。输入的filename是使用单引号括起来的字符串。

    2)dlmwrite(filename, M, 'D')

    将矩阵M写入一个ASCII格式的文件中,使用分隔符D来分割矩阵的元素。在目标文件filname中,数据是从第一行的第一列开始写的。逗号'是默认的分隔符,使用\t来产生制表符分割的文件。

    3)dlmwrite(filename, M, 'D', R, C)

    将矩阵M写入一个ASCII格式的文件中,使用分隔符D来分割矩阵的元素。在目标文件filname中,数据是从第R行的第C列开始写的,R和C从0开始,因此R=0,C=0指定了文件中的第一个数值,即左上角的位置。

    4)dlmwrite(filename, M, '-append') matabc

    将矩阵数据追加到文件的末尾。如果你不指定''-append',dlmwrite覆盖文件中的任何现有数据。
        5)dlmwrite(filename,M, '-append', attribute-value list) 
    接受一个属性值对列表。用户可以将'-append'标志放在属性-数值对之间,但不能放在属性和它的值的中间。

     

    展开全文
  • 函数 function s=mymainfun num=input('输入一个正整数:') sprintf('从1到整数%d的和为%d',num,mysum(num)) function s=mysum(num) %求1到num所有整数相加之和 s=0; for i=1:num, s=s+i; end 内部函数 命令: ...

    子函数

    function s=mymainfun
    num=input('输入一个正整数:')
    sprintf('从1到整数%d的和为%d',num,mysum(num))
    function s=mysum(num)
    %1到num所有整数相加之和
    s=0;
    for i=1:num,
        s=s+i;
    end
    

    内部函数
    命令:
    inline
    语法:
    inline(expr) 根据expr建立内部函数,函数自变量根据表达式自动搜索;
    inline(expr, arg1, arg2, …) 指定参数,arg1等参数是字符串参数
    inline(expr, N)

    g = inline('t^2')
    f = inline('xyz','x','y','z')
    g = inline('x^P1+x^P2',2)
    例子:运行如下
    f = inline('x^2+y^3')
    
    f =
         Inline function:
         f(x,y) = x^2+y^3
    
    f(3,1)
    ans =
        10
    

    字符串操作函数
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    其它函数:
    char(x) - 将x中非负数转换成字符
    double(x) - 将x转换成双精度类型数据
    blanks(n) - 生成n个空格字符
    deblank(s) - 删除s末尾的空格
    eval(s) - 计算Matlab字符串s
    字符测试:
    ischar(s) - 属于字符则返回1,否则返回0
    isletter(s) - 属于字母则返回1,否则返回0
    isspace(s) - 属于空白字符则返回1,否则返回0.

    文件处理函数
    格式化的文件 I/O函数
    fgetl - 从文件中读取一行数据,不保留行结束符
    fgets - 从文件中读取一行数据,保留行结束符
    fprintf - 将格式化的数据写到文件
    fscanf - 从文件中读取格式化的数据
    input - 输入函数
    textread - 从文件读取格式化的数据
    字符串转换函数
    sprintf - 将数据格式化成字符串
    sscanf - 按照格式从字符串种读取数据
    strread - 从文本字符串种读取格式化数据
    文件打开、关闭函数
    fopen - 打开文件
    fclose - 关闭文件
    二进制文件 I/O函数
    fread - 从文件读取二进制数据.
    fwrite - 将二进制数据写到文件中去
    文件位置函数
    feof - 测试是否到文件结尾
    ferror - 查询文件错误状态
    frewind - 将文件位置指示到文件开始
    fseek - 设置文件位置指示器
    ftell - 获得文件位置指示器

    读取格式化文件例子
    现有一个文本文件data.txt,其数据内容如下,每行有固定格式,均有5个数,
    文件内容如下:
    20020101 31 25 30 23
    20020101 35 35 40 25
    20020101 45 29 60 30
    20020101 65 75 80 40
    现要将该文件数据读入矩阵中,读取该文件的程序如下(flread.m)

    fid=fopen('data.txt','rt');
    if fid<0 
       sprintf('failure for reading file day.txt')
       return
    end
    row=0;
    while ~feof(fid)
       str=fgets(fid);
       row=row+1;
       if row>1,
          m(row,:)=str2num(str);
       else
          m=str2num(str);
       end
    end
    fclose(fid);
    

    输出:
    说明:
    由于是逐行读取,所以要判断是否读完,使用函数feof判断
    fgets:读取一行的字符串
    如果有些行在最后少了数据,则原来的程序会出错,出错行为下面的语句:

    m(row,:)=str2num(str)
    

    该行可改写为两行:

    tmp=str2num(str);
    m(row,1:length(tmp))=tmp
    
    展开全文
  • python中读取文件函数–&gt;read()、readline()、readlines()的区别 关于以上三种函数的区别,下面使用代码将运行结果进行进行比较: 先创建一个00.txt的文本文件,文件内容如下: 111111111 222222222 ...

    python中读取文件函数–>read()、readline()、readlines()的区别

    关于以上三种函数的区别,下面使用代码将运行结果进行进行比较:
    先创建一个00.txt的文本文件,文件内容如下:
    111111111
    222222222
    333333333
    444444444

    read()

    # 使用 read() 函数读取文本内容时:
    
    f = open('00.txt', 'rb')
    content1 = f.read()
    print(content1.decode('utf-8'))  # 打印内容为文本所有内容
    print('*'*20)
    

    打印结果为:
    111111111
    222222222
    333333333
    444444444


    read()是将文本内容全部读取出来的,在内存并非足够大,但是文本内容很多时,不建议使用read(),可能导致内存不够

    readline()

    f1 = open('00.txt', 'rb')
    content2 = f1.readline()
    print(content2.decode('utf-8'))  # 打印内容为文本第一行内容
    print('*'*20)
    

    打印结果:
    111111111


    打印仅为第一行的文本内容,readline()是每次只读取一行

    readlines()

    f2 = open('00.txt', 'rb')
    content3 = f2.readlines()
    for i in content3:
        print(i.decode('utf-8'))  
    

    打印结果:

    111111111

    222222222

    333333333

    444444444
    .readlines() 一次读取整个文件,像 .read() 一样,并以列list的形式返回。

    总结

    read():一次性读取文本的全部内容,并以字符串的形式存储返回
    readline(): 一次性只读取文本内容的一行,并以字符串的形式存储返回
    readlines(): 一次性读取文本的所有内容,并以列表的形式存储返回

    ①:在没有足够内存的情况下,可以考虑使用readline(),每次只读取一行,不会太消耗内存;
    ②:readline()和readlines()相比,前者由于是一行一行读取返回的,所以相较于后者,会慢很多。

    展开全文
  • python 读写文件函数open()用法

    千次阅读 2018-01-25 13:39:24
    1. open()语法 open(file[, mode[, buffering[, encoding[, errors[, newline[, closefd=True]]]]]]) ...open函数有很多的参数,常用的是file,mode和encoding file文件位置,需要加引号 mode文件

    原文链接:http://www.jb51.net/article/58002.htm

    1. open()语法

    open(file[, mode[, buffering[, encoding[, errors[, newline[, closefd=True]]]]]])
    open函数有很多的参数,常用的是file,mode和encoding
    file文件位置,需要加引号
    mode文件打开模式,见下面3
    buffering的可取值有0,1,>1三个,0代表buffer关闭(只适用于二进制模式),1代表line buffer(只适用于文本模式),>1表示初始化的buffer大小;
    encoding表示的是返回的数据采用何种编码,一般采用utf8或者gbk;
    errors的取值一般有strict,ignore,当取strict的时候,字符编码出现问题的时候,会报错,当取ignore的时候,编码出现问题,程序会忽略而过,继续执行下面的程序。
    newline可以取的值有None, \n, \r, ”, ‘\r\n',用于区分换行符,但是这个参数只对文本模式有效;
    closefd的取值,是与传入的文件参数有关,默认情况下为True,传入的file参数为文件的文件名,取值为False的时候,file只能是文件描述符,什么是文件描述符,就是一个非负整数,在Unix内核的系统中,打开一个文件,便会返回一个文件描述符。

    2. Python中file()与open()区别
    两者都能够打开文件,对文件进行操作,也具有相似的用法和参数,但是,这两种文件打开方式有本质的区别,file为文件类,用file()来打开文件,相当于这是在构造文件类,而用open()打开文件,是用python的内建函数来操作,建议使用open

    3. 参数mode的基本取值

    Character Meaning
    ‘r' open for reading (default)
    ‘w' open for writing, truncating the file first
    ‘a' open for writing, appending to the end of the file if it exists
    ‘b' binary mode
    ‘t' text mode (default)
    ‘+' open a disk file for updating (reading and writing)
    ‘U' universal newline mode (for backwards compatibility; should not be used in new code)

    r、w、a为打开文件的基本模式,对应着只读、只写、追加模式;
    b、t、+、U这四个字符,与以上的文件打开模式组合使用,二进制模式,文本模式,读写模式、通用换行符,根据实际情况组合使用、

    常见的mode取值组合

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    r或rt 默认模式,文本模式读
    rb   二进制文件
      
    w或wt 文本模式写,打开前文件存储被清空
    wb  二进制写,文件存储同样被清空
      
    a  追加模式,只能写在文件末尾
    a+ 可读写模式,写只能写在文件末尾
      
    w+ 可读写,与a+的区别是要清空文件内容
    r+ 可读写,与a+的区别是可以写到文件任何位置

    4. 测试
    测试文件test.txt,内容如下:


    1
    2
    3
    Hello,Python
    www.jb51.net
    This is a test file

    用一小段代码来测试写入文件直观的显示它们的不同

    test = [ "test1\n", "test2\n", "test3\n" ]
    f = open("test.txt", "a+")
    try:
     #f.seek(0)
     for l in test:
      f.write(l)
    finally:
     f.close()

    a+、w+和r+模式的区别(测试后还原test.txt)
    a+模式

    1
    2
    3
    4
    5
    6
    7
    # cat test.txt
    Hello, Python
    www.jb51.net
    This is a test file
    test1
    test2
    test3

    w+模式

    1
    2
    3
    4
    # cat test.txt
    test1
    test2
    test3

    r+模式
    在写入文件前,我们在上面那段代码中加上一句f.seek(0),用来定位写入文件写入位置(文件开头),直接覆盖字符数(注意\n也是一个字符)

    1
    2
    3
    4
    5
    6
    # cat test.txt
    test1
    test2
    test3
    inuxeye.com
    This is a test file

    注意:r+模式打开文件时,此文件必须存在,否则就会报错,‘r'模式也如此
    其他测试

    >>> f = open('test.txt')
    >>> f.read() #读取整个文件,字符串显示
    'Hello,Python\nwww.jb51.net\nThis is a test file\n'
    >>> f.read() #指针在文件末尾,不能再读取内容
    ''
    >>> f = open('test.txt')
    >>> f.readline() #一次读一行,指针在该行末尾
    'Hello,Python\n'
    >>> f.tell() #改行的字符长度
    13
    >>> f.readline()
    'www.jb51.net\n'
    >>> f.tell()
    30
    >>> f.readline()
    'This is a test file\n'
    >>> f.tell()
    50
    >>> f.readline()
    ''
    >>> f.tell() #指针停在最后一行
    50
    >>> f = open('test.txt')
    >>> f.readlines() #读取整个文件,以列表显示
    ['Hello,Python\n', 'www.jb51.net\n', 'This is a test file\n']
    >>> f.tell() #指针在最后一行
    50
    1
    2
    3
    4
    5
    6
    7
    8
    >>> f = open('test.txt','w') #覆盖创建新文件
    >>> f.write('Hello,Python!') #如果写入内容小于1024,会存在内存,否则需要刷新
    >>> f.flush() #写入到硬盘
    >>> f.close() #关闭文件会自动刷新
    >>> f.write('Hello,Linuxeye') #关闭后,写失败,提示文件已经关闭
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
    ValueError: I/O operation on closed file

    展开全文
  • PHP的三个读取文件函数

    千次阅读 2019-04-27 23:05:21
    使用file_get_contents()函数能在编译器编译后能显示出文件源代码,而在浏览器中打开时不能显示源代码。 代码使用如下: <?php echo fiel_get_contents('文件路径'); ?> 2 )readfile() 使用readfile()函数能...
  • fopen,fread,fwrite:二进制读写的顺序是用fopen以二进制方式打开读写文件,然后使用fread和fwrite两个函数将数据写入二进制文件中 #include <stdio.h> #include <stdlib.h> #define MAXLEN 1024 int...
  • c/c++读写文件函数

    2011-05-31 20:43:00
    c/c++读写函数用法
  • 读写文件函数ReadFile和WriteFile解析

    千次阅读 2008-04-14 10:19:00
    读写文件是每个Windows软件开发人员都需要做的工作。可见这项工作是非常重要的,毕竟各种各样的数据都需要保存起来,以便作各种各样的分析,或者通过网络传送给别人。像大家用BT下载的电影,在那个BT软件里,就需要...
  • 黄宁(562380094) 16:56:11 static unsigned char* getFileData ( const char * pszFileName,   const char * pszMode,  ...这个函数的pszmode 有哪几种. wolf(114587904) 16:58:20
  • C语言文件读写函数总结

    千次阅读 多人点赞 2018-04-30 23:51:59
    1、字符写入文件函数 fputc 2、从文件中读取字符 fgetc 二、字符串的读写 1、字符串写入文件函数 fputs 2、从文件中读取字符 fgets 三、块数据读写 1、向文件中写入块数据fwrite 2、从文件中读取块数据fread ...
  • 文件读写API函数

    千次阅读 2013-08-05 11:08:33
    文件操作API函数详解在VC中,...要对文件进行读写等操作,首先必须获得文件句柄,通过该函数可以获得文件句柄,该函数是通向文件世界的大门。 ReadFile 从文件读取字节信息。 在打开文件获得了文件句柄之后,则
  • C++ 文件读写相关函数

    千次阅读 2019-03-13 14:19:49
    几个C/C++语言文件读写函数 ... 在使用打开文件函数时,我们要提供一个要打开的文件名,这里要提供一个当前用户有权限进行相应mode操作的文件,且应该提供相对应的文件路径(默认路径为当前文件夹)。打开方式mo...
  • C++文件操作函数-读写文件

    千次阅读 2017-06-10 16:13:09
    文件读写是基础中的基础,关于此类知识的文章非常多,但还是想根据自己的使用心得去总结这么一些内容。 主要内容有:1.文件的打开和关闭;2.文件读写操作(包括二进制文件读写也介绍了一些)
  • c++ 文件读取函数总结

    千次阅读 2017-09-17 01:01:48
    c++ 文件读取函数总结IO相关类继承关系 本文讲解文件读写,因此主要介绍相关类以及的fopen。
  • C语言文件读取函数

    千次阅读 2019-09-02 22:04:07
    相关函数 fgets 读取一行 feof 判断文件是否结束 fopen 打开文件 返回一个文件指针 fgetc 读取一个字节
  • Matlab文件读写函数

    千次阅读 2012-11-29 21:15:32
    Matlab提供多种能够进行文件读写函数,这些函数是Matlab语言的一部分,并不需要任何额外的工具箱的支持。...在实际的使用中,很多人会推荐这样的一种选择原则:在读取文件时,尽量使用高级函数;在存写文
  • 总结文件读写函数

    2012-06-14 11:05:11
    最近工作中常用到,需要总结文件读写函数
  • matlab读取文件操作函数

    千次阅读 2019-08-23 21:23:59
    Move to specified position in file,移到文件的某一个特殊位置 二:语法 status = fseek(fileID, offset, origin) fileID的意思是fopen打开时产生的整数标识,大于0时,表示文件成功打开。 在文件中,offset是...
  • Matlab 文件读写函数

    千次阅读 2012-08-23 07:59:50
    Matlab中对文件读写函数可以分为2大类:高级函数和低级函数。简单的说,高级函数的调用语法简单,方便使用;但是可定制性差,只适用某些特殊格式的文件类型,缺乏灵活性。 在实际的使用中,很多人会推荐这样的
  • C文件 写入 读取 函数

    千次阅读 2012-03-05 17:32:34
    1.C写入文件函数 #include main() {  FILE *f; ... f=fopen("wenzhang.txt","w");... fprintf(f,"this is a c program !...2.读取文件函数 /*要求 "文章.txt" 文件在c程序同一目录中。*/    #include
  • Linux下文件读写函数的使用总结读、写、追加方式modefopen()函数用法char *fgets(str,n,fp)int fputs(const char *s, FILE *stream);fclose()函数1. 文件的顺序写函数文件的顺序读操作函数文件的随机读写函数 读、...
  • 【This VI】LabVIEW读取文本文件函数

    千次阅读 2015-01-15 14:58:28
    通过打开/创建/替换文件函数以默认的读取/写入权限打开文件,并连线引用句柄至执行读取或写入操作的函数。 默认情况下,该函数从文本文件中读取所有字符。连线整数值至计数接线端,指定从第一个字符开始读取字符的...
  • 相关函数:fopen, fwrite, fseek, fscanf 头文件:#include 定义函数:size_t fread...函数说明:fread()用来从文件流中读取数据.  参数stream 为已打开的文件指针, 参数ptr 指向欲存放读取进来的数据空间,
  • C语言常用文件读写函数记录
  • C语言文件读写函数详解

    千次阅读 2016-03-24 12:40:54
     fopen的原型是:FILE *fopen(const char *filename,const char *mode),fopen实现三个功能:为使用而打开一个流,把一个文件和此流相连接,给此流返回一个FILR指针。  参数filename指向要打开的文件名,mode表示...
  • 读取文件函数总结

    千次阅读 2014-10-17 10:54:34
    首先,用fopen($fp)打开文件。 然后,用一下介绍的函数d
  • C文件读写函数

    千次阅读 2018-09-14 13:14:31
    本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: ...导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl + Q 插入链接 ...
  • 在matlab中调用strcat()函数获得的是一个cell类型的 变量,而不是string类型。这是如果我们直接把这个cell类型的变量,传递到其他函数中作为string类型使用,就是出现问题,下面是一个例子: names={'fyc','hy','...
  • 常用的文件读写函数

    千次阅读 2017-12-12 10:03:10
    一、函数原型 ...path:文件路径 mode:打开方式 打开成功函数返回目标文件文件指针,否则返回空指针 size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream); ptr:保存数据的指针 siz

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,094,996
精华内容 437,998
关键字:

读取文件的函数