Rumah  >  Artikel  >  php教程  >  [PHP] 重回基础(IO流) - 陶士涵

[PHP] 重回基础(IO流) - 陶士涵

WBOY
WBOYasal
2016-05-20 10:13:121207semak imbas

IO流用来处理设备之间的数据传输

java对数据的操作是通过流的方式

java用于操作流的对象都在IO包中

流按操作数据分为两种:字节流与字符流

流按流向分为:输入流,输出流

 

字符流

抽象基类:Reader Writer

 

文件操作,写

获取FileWriter对象,new出来,构造参数:String的文件名;此时会在指定目录下创建出文件,如果已存在,将会被覆盖;这个方法会抛出IOException异常

调用FileWriter对象的write()方法,将字符串写入到流中,参数:String字符串

调用FileWriter对象的flush()方法,刷新流

        FileWriter fw=<span style="color: #0000ff;">new</span> FileWriter("test.txt"<span style="color: #000000;">);
        fw.write(</span>"hello3"<span style="color: #000000;">);
        fw.close();</span><span style="color: #008000;">//</span><span style="color: #008000;">刷新并关闭</span>

 

 

文件操作,读

获取FileReader对象,new出来,构造参数:String的文件名

调用FileReader对象的read()方法,返回读取的长度,如果到末尾会返回-1,参数:char[] 字符数组

while循环读取,条件:如果读取的长度不为-1

组合字符串

        FileReader fr=<span style="color: #0000ff;">new</span> FileReader("test.txt"<span style="color: #000000;">);
        </span><span style="color: #0000ff;">char</span>[] buf=<span style="color: #0000ff;">new</span> <span style="color: #0000ff;">char</span>[2<span style="color: #000000;">];
        </span><span style="color: #0000ff;">int</span> len=0<span style="color: #000000;">;
        StringBuilder sb</span>=<span style="color: #0000ff;">new</span><span style="color: #000000;"> StringBuilder();
        </span><span style="color: #0000ff;">while</span>((len=fr.read(buf))!=-1<span style="color: #000000;">){
            sb.append(</span><span style="color: #0000ff;">new</span> String(buf,0<span style="color: #000000;">,len));
        }
        System.out.println(sb.toString());</span>

 

 

PHP版,文件操作,写 

调用函数fopen(),打开文件获取file对象,参数:String的文件名,”w”写入,如果文件不存在会创建

调用fwrite()方法,直接就写到文件里去了,参数:file对象,String的字符串

调用fclose()方法,关闭流,参数:file对象

 

<span style="color: #800080;">$file</span>=<span style="color: #008080;">fopen</span>("test.txt","w"<span style="color: #000000;">);
</span><span style="color: #008080;">fwrite</span>(<span style="color: #800080;">$file</span>,"hello"<span style="color: #000000;">);
</span><span style="color: #008080;">fclose</span>(<span style="color: #800080;">$file</span>);

 

文件操作,读

调用函数fopen(),打开文件获取file对象,参数:String的文件名,”r”读取

调用函数fread(),得到String的字符串,参数:file对象,读取长度

while循环读取,条件:没有到文件末尾,feof($file)不为true

拼接字符串

<span style="color: #800080;">$file</span>=<span style="color: #008080;">fopen</span>("test.txt","r"<span style="color: #000000;">);
</span><span style="color: #800080;">$str</span>=""<span style="color: #000000;">;
</span><span style="color: #0000ff;">while</span>(!<span style="color: #008080;">feof</span>(<span style="color: #800080;">$file</span><span style="color: #000000;">)){
    </span><span style="color: #800080;">$str</span>.=<span style="color: #008080;">fread</span>(<span style="color: #800080;">$file</span>, 1<span style="color: #000000;">);
}

</span><span style="color: #0000ff;">echo</span> <span style="color: #800080;">$str</span><span style="color: #000000;">;
</span><span style="color: #008080;">fclose</span>(<span style="color: #800080;">$file</span>);

 

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn