import java.io.RandomAccessFile; public class MultiFileWriter { public static final String File_PATH = "D:\\"; public static void main(String[] args) throws Exception{ RandomAccessFile raf = new RandomAccessFile(File_PATH + "1.txt", "rw"); raf.setLength(1024 * 1024 * 5);//文件大小5M raf.close(); String s1 = "hello world 1"; String s2 = "hello world 2"; String s3 = "hello world 3"; String s4 = "hello world 4"; String s5 = "hello world 5"; new MultiFileWriterThread(1024 * 2 , s1.getBytes()).start(); new MultiFileWriterThread(1024 * 12 , s2.getBytes()).start(); new MultiFileWriterThread(1024 * 26 , s3.getBytes()).start(); new MultiFileWriterThread(1024 * 1024 * 2 , s4.getBytes()).start(); new MultiFileWriterThread(1024 * 3 * 1024 , s5.getBytes()).start(); } } final class MultiFileWriterThread extends Thread { private String name; private byte[] content; private int skip; public MultiFileWriterThread(int skip,byte[] content){ this(skip, content, "MultiFileWriterThread"); } public MultiFileWriterThread(int skip,byte[] content,String name){ this.skip = skip; this.content = content; this.name = name; } @Override public void run() { try { RandomAccessFile raf = new RandomAccessFile(MultiFileWriter.File_PATH + "1.txt", "rw"); raf.seek(skip); raf.write(content); raf.close(); } catch (Exception e) { System.err.println(name + e.getMessage()); e.printStackTrace(); } } }