需求概括:
整理所有sql语句按照执行的顺序汇总到一个文档中,后续只需维护这个sql语句文档; java实现按行读取文件,从上到下依次存入一个有序的数组中; 单元测试代码每条测试用例使用一条sql语句,以索引获取到有序数组中一个元素。
核心方法:
使用java.io读取文件InputStream is = new FileInputStream ( fileDIR) ;
InputStreamReader isr = new InputStreamReader ( is) ;
BufferedReader br = new BufferedReader ( isr) ;
按行读取,将每次读取一行的结果赋值给str_lineString str_line= br. readLine ( )
br. close ( ) ;
List < String > sqls = new ArrayList < String > ( ) ;
sqls. add ( str_line) ;
直接上代码:
package DemoApplication ;
import java. io. * ;
import java. util. ArrayList ;
import java. util. List ;
public class ReadFile {
private final String filename;
public ReadFile ( String fileName) {
this . filename = fileName;
}
public static List < String > readFileByLine ( String fileDIR) {
List < String > sqls = new ArrayList < String > ( ) ;
try {
InputStream is = new FileInputStream ( fileDIR) ;
InputStreamReader isr = new InputStreamReader ( is) ;
BufferedReader br = new BufferedReader ( isr) ;
String str_line;
while ( ( str_line = br. readLine ( ) ) != null ) {
sqls. add ( str_line) ;
}
System . out. println ( sqls) ;
br. close ( ) ;
} catch ( FileNotFoundException e) {
e. printStackTrace ( ) ;
} catch ( IOException e) {
System . out. println ( "读取文件行存储操作失败!" ) ;
e. printStackTrace ( ) ;
}
return sqls;
}
public static void main ( String [ ] args) {
System . out. println ( readFileByLine ( "src/main/data/testData.txt" ) ) ;
}
}