具体的创建方法参照下面的实例:
public class FileTest {
public static void main(String[] args) {// 根据系统的实际情况选择目录分隔符(windows下是,linux下是/)
String separator = File.separator
String directory = "myDir1" + separator + "myDir2"
// 以下这句的效果等同于上面两句,windows下正斜杠/和反斜杠都是可以的
// linux下只认正斜杠,为了保证跨平台性,不建议使用反斜杠(在java程序中是转义字符,用\来表示反斜杠)
// String directory = "myDir1/myDir2"
String fileName = "myFile.txt"
// 在内存中创建一个文件对象,注意:此时还没有在硬盘对应目录下创建实实在在的文件
File f = new File(directory,fileName)
if(f.exists()) {
// 文件已经存在,输出文件的相关信息
System.out.println(f.getAbsolutePath())
System.out.println(f.getName())
System.out.println(f.length())
} else {
// 先创建文件所在的目录
f.getParentFile().mkdirs()
try {
// 创建新文件
f.createNewFile()
} catch (IOException e) {
System.out.println("创建新文件时出现了错误。。。")
e.printStackTrace()
}
}
}
}
FileOutputStream fos1=new FileOutputStream("目标目录\\1.txt")FileOutputStream fos2=new FileOutputStream("目标目录\\2.txt")
FileOutputStream fos3=new FileOutputStream("目标目录\\3.txt")
//不需要去判断 文件是否存在 因为 new FileOutputStream("目标目录\\1.txt")默认是会覆盖源文件的
//如果new FileOutputStream("目标目录\\1.txt",true)则是在文件尾追加
// File file=new File("存放文件的目录")
File file=new File("存放文件的目录")
File[] files=file.listFiles()
for(File f:files){
FileInputStream fis=new FileInputStream(f)
byte[] b=new byte[fis.available()]
fis.read(b)
if(f.getName().charAt(0)=='1'){
fos1.write(b)
}else if(f.getName().charAt(0)=='2'){
fos2.write(b)
}else if(f.getName().charAt(0)=='3'){
fos3.write(b)
}
fis.close()
}
fos1.close()
fos2.close()
fos3.close()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)