//根据你的要求修改了一下代码,现在已经能将某文件夹下的所有指定类型文件复制到
//指定文件夹下了
import javaioBufferedInputStream;
import javaioBufferedOutputStream;
import javaioFile;
import javaioFileInputStream;
import javaioFileOutputStream;
public class ReadFiles {
public static final String FILTER = "xml";
public static final String SRC_DIR = "E:\\StudyData";// 待扫描的文件夹
public static final String DES_DIR = "E:\\testdata";// 复制后的目标文件夹
public static void main(String[] args) {
long a = SystemcurrentTimeMillis();
scanDir(SRC_DIR, DES_DIR);
Systemoutprintln("共花费时间:"+(SystemcurrentTimeMillis() - a)/1000+"秒");
}
public static void scanDir(String srcPath, String desPath) {
File dir = new File(srcPath);
File[] files = dirlistFiles();
if (files == null)
return;
for (int i = 0; i < fileslength; i++) {
if (files[i]isDirectory()) {
scanDir(files[i]getAbsolutePath(), desPath);
} else {
String strFileName = files[i]getAbsolutePath()toLowerCase();
copyFile(strFileName, desPath + files[i]getName());
}
}
}
public static void copyFile(String srcName, String destName) {
if (srcNameendsWith(FILTER)) {
Systemoutprintln("正在复制文件 "+srcName+" 至 "+destName);
try {
BufferedInputStream in = new BufferedInputStream(
new FileInputStream(srcName));
BufferedOutputStream out = new BufferedOutputStream(
new FileOutputStream(destName));
int i = 0;
byte[] buffer = new byte[2048];
while ((i = inread(buffer)) != -1) {
outwrite(buffer, 0, i);
}
outclose();
inclose();
} catch (Exception ex) {
exprintStackTrace();
}
}
}
}
在ie6中对于<input type="file" />通过objvalue是可以获取客户端选择文件的全路径的,但是到ie7就只能获取文件名,这对于onchange事件立即显示会有问题,可以用js方法解决
具体代码如下:
<html>
<head>
<title>get file input full path</title>
<script language='javascript'>
function getFullPath(obj)
{
if(obj)
{
//ie
if (windownavigatoruserAgentindexOf("MSIE")>=1)
{
objselect();
return documentselectioncreateRange()text;
}
//firefox
else if(windownavigatoruserAgentindexOf("Firefox")>=1)
{
if(objfiles)
{
return objfilesitem(0)getAsDataURL();
}
return objvalue;
}
return objvalue;
}
}
</script>
</head>
<body>
<input type="file" onchange="documentgetElementById('img')src=getFullPath(this);" />
<img id="img" />
</body>
</html>
从你的代码看,你是要在java类里获取相对路径类名classgetResourceAsStream()可以获取到同你这个类相同路径下的文件SystemgetProperty("userdir")可以获取到工程src的路径,下面就可以自己加路径了嘛提醒一点。src/com/sigls/model/filter/tttxt";最好不要这样写。不同版本的JDK对这个/是有区别的,最好用Fileseparator就相当于/但是在不同版本也是\所以用Fileseparator就可以避免这点
以上就是关于java 怎么获取指定路径下的文件全部的内容,包括:java 怎么获取指定路径下的文件、java 导出文件并获取文件路径的问题、java 怎样获取一个文件相对路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)