
//切割txt文档?你没说清楚,我就当你是切割文档了!方法挺多的,我就用其中一个好了!
//本方法测试,切割大小为4.5KB的文本文档(皇帝新装),分成5份片段文件!
import java.io.File
import java.io.FileNotFoundException
import java.io.IOException
import java.io.RandomAccessFile
public class CutTest {
static File dir=new File("K:\\IO测试\\随机流测试")//目录路径!
public static void main(String[] args) {
File file=new File(dir,"皇帝新装.txt")//文件!
long size=file.length()//文件大小!
//创建随机流!
RandomAccessFile raf1=null,raf2=null
byte[] bytes=new byte[1024]//缓冲区!
try {
raf1=new RandomAccessFile(file,"r")
for(int i=0,len=0i<=size/1024i++) {
len=raf1.read(bytes)//读入数据!
raf2=new RandomAccessFile(new File(dir,"片段"+(i+1)+".txt"),"rw")
raf2.write(bytes, 0, len)//写出数据!
raf2.close()//关闭!
}
} catch (FileNotFoundException e) {
e.printStackTrace()
}catch(IOException e) {
e.printStackTrace()
}finally {//关流!
if(raf1!=null) {
try {
raf1.close()
} catch (IOException e) {
e.printStackTrace()
}
}
if(raf2!=null) {
try {
raf2.close()
} catch (IOException e) {
e.printStackTrace()
}
}
}
}
}
import java.io.BufferedReaderimport java.io.FileNotFoundException
import java.io.FileReader
import java.io.IOException
import java.io.RandomAccessFile
import java.util.Scanner
public class TestPrint {
public static void main(String[] args) throws IOException {
String path = "你要读的文件的路径"
RandomAccessFile br=new RandomAccessFile(path,"rw")//这里rw看你了。要是之都就只写r
String str = null, app = null
int i=0
while ((str = br.readLine()) != null) {
i++
app=app+str
if(i>=100){//假设读取100行
i=0
// 这里你先对这100行 *** 作,然后继续读
app=null
}
}
br.close()
}
}
package demoimport java.io.BufferedInputStream
import java.io.BufferedReader
import java.io.File
import java.io.FileInputStream
import java.io.InputStreamReader
import java.util.ArrayList
import java.util.List
public class DemoApp {
public static void main(String[] args) throws Exception {
// 指定的文件
File file = new File("E:\\Workspaces\\eclipse3.7\\Demo\\src\\test.txt")
// 装载list
List<String> list = new ArrayList<String>()
// 读取文件
FileInputStream fis = new FileInputStream(file)
BufferedReader br = new BufferedReader(new InputStreamReader(fis))
StringBuffer buffer = new StringBuffer()
String line
int i = 0
while ((line = br.readLine()) != null) {
System.out.println(line)
if (i == 0) {
buffer.append(line + "\n")
} else {
// 判断截取点
if (line.substring(0, 1).equals(">")) {
list.add(buffer.toString())
buffer = new StringBuffer()
buffer.append(line + "\n")
} else {
buffer.append(line + "\n")
}
}
i++
}
if (line == null) {
list.add(buffer.toString())
}
// test
System.out.println("--------------------------")
for(int j=0 j<list.size() j++) {
System.out.println( j + ": " + list.get(j))
System.out.println("-----------------------")
}
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)