在Java工程下,用java代码创建文件夹
Stringfilepath="TestPro/WebRoot/doc/"+teaname+"/"+testname+"/"+stuNum;Filefile=newFil...
String filepath = "TestPro/WebRoot/doc/"+teaname+"/"+testname+"/"+stuNum;
File file = new File(filepath);
if(!file.isDirectory()){
file.mkdirs();
这样写路径有问题吗? 展开
File file = new File(filepath);
if(!file.isDirectory()){
file.mkdirs();
这样写路径有问题吗? 展开
6个回答
2015-12-20 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
参考下面代码,说明已在代码中注释:
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class WriteFile {
public static void main(String[] args) {
writeFile();
}
public static void writeFile(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String content = sdf.format(new Date());
System.out.println("现在时间:" + content);
FileOutputStream out = null;
File file;
try {
String rootFile = "D:\\tests\\license";
file = new File(rootFile);
if (!file.exists()) {
/*
file.mkdirs():创建没有存在的所有文件夹
file.mkdir():创建没有存在的最后一层文件夹
例如:在硬盘上有D://test 文件夹,但是现在需要创建D://test//license//save,这个时候就需要使用file.mkdirs()而不能使用file.mkdir(),另外这两个方法都是仅仅能创建文件夹,不能创建文件,即使创建D://test//license//save//systemTime.dat如果使用该方法创建的SystemTime.dat也是一个文件夹 ,而不是文件
*/
file.mkdirs();
}
File fileDat = new File(rootFile + "\\systemFile.dat");
/*
if(!fileDat.exists()){
//创建文件 不是文件夹,在程序中这这一步没有必要,因为
new FileOutputStream(fileDat);该语句有创建文件的功能
fileDat.createNewFile();//
}
*/
out = new FileOutputStream(fileDat);
byte[] contentInBytes = content.getBytes();
out.write(contentInBytes);
out.flush();
out.close();
System.out.println("Done");
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (out != null) {
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
展开全部
文件夹是创建了,但是肯定不在你的项目下面。
使用tomcat的servlet来获取项目路径并创建文件夹:但是这个文件夹不会再项目里面加载
String root = ServletActionContext.getServletContext().getRealPath("/upload");
File rootDirFile = new File(root);
if(!rootDirFile.exists()){
rootDirFile.mkdir();
}
在WebRoot下创建upload目录
使用tomcat的servlet来获取项目路径并创建文件夹:但是这个文件夹不会再项目里面加载
String root = ServletActionContext.getServletContext().getRealPath("/upload");
File rootDirFile = new File(root);
if(!rootDirFile.exists()){
rootDirFile.mkdir();
}
在WebRoot下创建upload目录
追问
用了你的办法,但是没有创建文件夹啊
追答
查看tomcat webapps 工程里面,没直接在项目里显示
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
应该报错。因为不是相对路径,也不是绝对路径,系统貌似识别不出来。
String filepath = "d:"+stuNum;
相对路径,有一个get啥来着,忘了~^_^
String filepath = "d:"+stuNum;
相对路径,有一个get啥来着,忘了~^_^
追问
因为到时候项目要发布到服务器的,不能写什么D:\\什么的,所以 我是想在我工程的WebRoot下建立文件夹,你有办法吗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-01-13
展开全部
package com.xhkj.util;
import java.io.File;
import java.io.IOException;
public class CreateFileUtil {
public static boolean CreateFile(String destFileName) {
File file = new File(destFileName);
if (file.exists()) {
System.out.println("创建单个文件" + destFileName + "失败,目标文件已存在!");
return false;
}
if (destFileName.endsWith(File.separator)) {
System.out.println("创建单个文件" + destFileName + "失败,目标不能是目录!");
return false;
}
if (!file.getParentFile().exists()) {
System.out.println("目标文件所在路径不存在,准备创建。。。");
if (!file.getParentFile().mkdirs()) {
System.out.println("创建目录文件所在的目录失败!");
return false;
}
}
// 创建目标文件
try {
if (file.createNewFile()) {
System.out.println("创建单个文件" + destFileName + "成功!");
return true;
} else {
System.out.println("创建单个文件" + destFileName + "失败!");
return false;
}
} catch (IOException e) {
e.printStackTrace();
System.out.println("创建单个文件" + destFileName + "失败!");
return false;
}
}
public static boolean createDir(String destDirName) {
File dir = new File(destDirName);
if(dir.exists()) {
System.out.println("创建目录" + destDirName + "失败,目标目录已存在!");
return false;
}
if(!destDirName.endsWith(File.separator))
destDirName = destDirName + File.separator;
// 创建单个目录
if(dir.mkdirs()) {
System.out.println("创建目录" + destDirName + "成功!");
return true;
} else {
System.out.println("创建目录" + destDirName + "成功!");
return false;
}
}
public static String createTempFile(String prefix, String suffix, String dirName) {
File tempFile = null;
try{
if(dirName == null) {
// 在默认文件夹下创建临时文件
tempFile = File.createTempFile(prefix, suffix);
return tempFile.getCanonicalPath();
}
else {
File dir = new File(dirName);
// 如果临时文件所在目录不存在,首先创建
if(!dir.exists()) {
if(!CreateFileUtil.createDir(dirName)){
System.out.println("创建临时文件失败,不能创建临时文件所在目录!");
return null;
}
}
tempFile = File.createTempFile(prefix, suffix, dir);
return tempFile.getCanonicalPath();
}
} catch(IOException e) {
e.printStackTrace();
System.out.println("创建临时文件失败" + e.getMessage());
return null;
}
}
public static void main(String[] args) {
// 创建目录
String dirName = "c:/test/test0/test1";
CreateFileUtil.createDir(dirName);
// 创建文件
String fileName = dirName + "/test2/testFile.txt";
CreateFileUtil.CreateFile(fileName);
// 创建临时文件
String prefix = "temp";
String suffix = ".txt";
for(int i = 0; i < 10; i++) {
System.out.println("创建了临时文件:" + CreateFileUtil.createTempFile(prefix, suffix, dirName));
}
}
}
import java.io.File;
import java.io.IOException;
public class CreateFileUtil {
public static boolean CreateFile(String destFileName) {
File file = new File(destFileName);
if (file.exists()) {
System.out.println("创建单个文件" + destFileName + "失败,目标文件已存在!");
return false;
}
if (destFileName.endsWith(File.separator)) {
System.out.println("创建单个文件" + destFileName + "失败,目标不能是目录!");
return false;
}
if (!file.getParentFile().exists()) {
System.out.println("目标文件所在路径不存在,准备创建。。。");
if (!file.getParentFile().mkdirs()) {
System.out.println("创建目录文件所在的目录失败!");
return false;
}
}
// 创建目标文件
try {
if (file.createNewFile()) {
System.out.println("创建单个文件" + destFileName + "成功!");
return true;
} else {
System.out.println("创建单个文件" + destFileName + "失败!");
return false;
}
} catch (IOException e) {
e.printStackTrace();
System.out.println("创建单个文件" + destFileName + "失败!");
return false;
}
}
public static boolean createDir(String destDirName) {
File dir = new File(destDirName);
if(dir.exists()) {
System.out.println("创建目录" + destDirName + "失败,目标目录已存在!");
return false;
}
if(!destDirName.endsWith(File.separator))
destDirName = destDirName + File.separator;
// 创建单个目录
if(dir.mkdirs()) {
System.out.println("创建目录" + destDirName + "成功!");
return true;
} else {
System.out.println("创建目录" + destDirName + "成功!");
return false;
}
}
public static String createTempFile(String prefix, String suffix, String dirName) {
File tempFile = null;
try{
if(dirName == null) {
// 在默认文件夹下创建临时文件
tempFile = File.createTempFile(prefix, suffix);
return tempFile.getCanonicalPath();
}
else {
File dir = new File(dirName);
// 如果临时文件所在目录不存在,首先创建
if(!dir.exists()) {
if(!CreateFileUtil.createDir(dirName)){
System.out.println("创建临时文件失败,不能创建临时文件所在目录!");
return null;
}
}
tempFile = File.createTempFile(prefix, suffix, dir);
return tempFile.getCanonicalPath();
}
} catch(IOException e) {
e.printStackTrace();
System.out.println("创建临时文件失败" + e.getMessage());
return null;
}
}
public static void main(String[] args) {
// 创建目录
String dirName = "c:/test/test0/test1";
CreateFileUtil.createDir(dirName);
// 创建文件
String fileName = dirName + "/test2/testFile.txt";
CreateFileUtil.CreateFile(fileName);
// 创建临时文件
String prefix = "temp";
String suffix = ".txt";
for(int i = 0; i < 10; i++) {
System.out.println("创建了临时文件:" + CreateFileUtil.createTempFile(prefix, suffix, dirName));
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
路径不对,至少要有在哪个盘吧? 然后你的项目的路径在哪? 你可以去百度下,java 代码创建文件夹,能解决你的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询