一些语言的按行读取文件的代码实现小结
发布时间:2020-12-14 23:54:35 所属栏目:C语言 来源:网络整理
导读:Java实现 import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException; public class JavaFile { public static void main(Strin
Java实现 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; public class JavaFile { public static void main(String[] args) { try { // read file content from file StringBuffer sb= new StringBuffer(""); FileReader reader = new FileReader("c://test.txt"); BufferedReader br = new BufferedReader(reader); String str = null; while((str = br.readLine()) != null) { sb.append(str+"/n"); System.out.println(str); } br.close(); reader.close(); // write string to file FileWriter writer = new FileWriter("c://test2.txt"); BufferedWriter bw = new BufferedWriter(writer); bw.write(sb.toString()); bw.close(); writer.close(); } catch(FileNotFoundException e) { e.printStackTrace(); } catch(IOException e) { e.printStackTrace(); } } } C++实现 #include<string> #include<iostream> #include<stdlib.h> #include<fstream> int main() { std::string file_name="123"; std::ifstream fin(file_name.c_str()); std::string textline[3]; for(int i=0;i<3;++i) getline(fin,textline[i],'n');//遇到换行结束这一行的读取 for(int i=0;i<3;++i) std::cout<<textline[i]<<'n'; return 0; } php实现
<?php /** * 按行读取文件 * @param string $filename */ function readFileByLine ($filename) { $fh = fopen($filename,'r'); while (! feof($fh)) { $line = fgets($fh); echo $line; } fclose($fh); } // test $filename = "/home/wzy/test/sort.txt"; readFileByLine($filename); c语言实现 #include <stdio.h> #include <stdlib.h> #include <string.h> #define LEN 1024 int main(void) { char filename[LEN],buf[LEN]; FILE *fp; int len; scanf("%s",filename); fp = fopen(filename,"r"); if (fp == NULL) exit(-1); while (fgets(buf,LEN,fp) != NULL) { len = strlen(buf); buf[len - 1] = ' '; // 去掉换行符 printf("%sn",buf); } return 0; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |