導航:首頁 > IDC知識 > java遍歷伺服器文件

java遍歷伺服器文件

發布時間:2021-01-29 15:27:27

1、如何用java遍歷遠程目錄的文件

最近有一個需求,要把一個文件上傳到一個公共的遠程目錄(後綴為.a),然後其他系統去那個目錄裡面獲取文件,再經過修改,同樣也上傳到那個目錄(後綴為.b)。然後我要過一段時間去掃描一下那個目錄下面有沒有後綴是.b 的文件產生,如果有的話,再把這個文件拿過來做解析------解決方案--------------------------------------------------------沒干過會很盲目,寫IO 文件的事情你去學下java IO 操作文件簡單想像思路,一般你自己寫就是操作自己本機的電腦,就是把本機IP 127.0.0.1 的文件,現在你的去別的IP 讀寫文件,就是文件的路徑換了個IP 一樣。------解決方案--------------------------------------------------------探討引用:沒干過會很盲目,寫IO 文件的事情你去學下java IO 操作文件簡單想像思路,一般你自己寫就是操作自己本機的電腦,就是把本機IP 127.0.0.1 的文件,現在你的去別的IP 讀寫文件,就是文件的路徑換了個IP 一樣。恩,這個思路可以。

2、怎麼用Java編寫簡單的程序,遍歷c盤里所有的文件

這個可以使用遞歸來實現,具體代碼如下:

import java.io.File;

public class Demo {
public static void main(String[] args) {
專File file = new File("C:");// 指定文件目錄屬
method(file);
}

public static void method(File file) {
File[] fs = file.listFiles();// 得到File數組

if(fs!=null) {// 判斷fs是否為null
for(File f : fs) {
if(f.isFile()) {// 如果是文件直接輸出
System.out.println(f.getName());
} else {
method(f);// 否則遞歸調用
}
}
}

}
}

3、如何用Java遍歷一個網路目錄下的所有文件

這個應該做不到,除非網路伺服器提供了介面給你展示所有目錄

4、JAVA遍歷一個文件夾中的所有文件---(遞歸)

public void traverseFolder2(String path) {

File file = new File(path);  

if (file.exists()) {

File[] files = file.listFiles();  

if (null == files || files.length == 0) {

System.out.println("文件夾是空的!");  

return;

} else {  

for (File file2 : files) {  

if (file2.isDirectory()) {

System.out.println("文件夾:" + file2.getAbsolutePath());

traverseFolder2(file2.getAbsolutePath());

} else {

System.out.println("文件:" + file2.getAbsolutePath());

}

}

}

} else {

System.out.println("文件不存在!");

}

}

(4)java遍歷伺服器文件擴展資料

public void traverseFolder1(String path) {  

int fileNum = 0, folderNum = 0;

File file = new File(path);  

if (file.exists()) {

LinkedList<File> list = new LinkedList<File>();

File[] files = file.listFiles();  

for (File file2 : files) {  

if (file2.isDirectory()) {

System.out.println("文件夾:" + file2.getAbsolutePath());

list.add(file2);  

foldeNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

File temp_file;  

while (!list.isEmpty()) {

temp_file = list.removeFirst();


files = temp_file.listFiles();  

for (File file2 : files) {  

if (file2.isDirectory()) {

System.out.println("文件夾:" + file2.getAbsolutePath());

list.add(file2);

folderNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

}

} else {

System.out.println("文件不存在!");

}

System.out.println("文件夾共有:" + folderNum + ",文件共有:" + fileNum);

}

5、JAVA 遍歷讀取目錄怎麼找到.java文件,並讀取內容?

一般拒絕訪問都是代碼

錯誤,你可能操作的是

一個目錄而不是文件,

看下io文檔就好了,先

給一個路徑,然後list

files讀取,最後循環遍

歷判斷是不是文件和後

綴,讀出來就好了

6、java遍歷指定文件夾下的所有子文件夾怎麼操作?

import java.io.File ;
import java.io.IOException ;
public class FileDemo11{
public static void main(String args[]){
File my = new File("d:" + File.separator) ;// 操作路徑,可以有外部抄參數決定襲的
print(my) ;
}
public static void print(File file){// 遞歸調用
if(file!=null){// 判斷對象是否為空
if(file.isDirectory()){// 如果是目錄
File f[] = file.listFiles() ;// 列出全部的文件
if(f!=null){// 判斷此目錄能否列出
for(int i=0;i<f.length;i++){
print(f[i]) ;// 因為給的路徑有可能是目錄,所以,繼續判斷
}
}
}else{
System.out.println(file) ;// 輸出路徑
}
}
}
};

7、用java怎麼遍歷磁碟上的所有文件

首先,我們需要獲取磁碟中所有的盤符路徑:jdk6中一個方法搞定:

File [] roots = File.listRoots();

然後,通過每個路徑來進行向下遍歷,上代碼(手敲,各種小錯誤別怪我,看思路就好):

import java.io.File;
/**
由於本人使用了junit,請自行添加main方法測試
*/
public class Test{

@org.junit.Test
public void testfiles(){

File [] roots = File.listRoots();
for(File f:roots){
System.out.println(f.getAbsolutePath());
}
listFiles(roots);

}

public void listFiles(File[] files){

if(files==null||files.length==0)return;
    for(File f : files){
     if(f.isDirectory()){
     System.out.println(f.getAbsolutePath());
     listFiles(f.listFiles());
     }else{
     System.out.println(" |"+f.getName());
     }
    }

}


}

8、java ftp協議遍歷下載伺服器上指定文件夾下mp4格式的文件

不需要裝軟體,下載需要執行sftp伺服器目錄和本地目錄你說的directory空指針,應該是你沒有指定從sftp的哪個目錄下載

9、JAVA怎樣做文件遍歷?

用遞歸吧,代碼少:

import java.io.File;

public class Test {
public static void main(String[] args) throws Exception {
getAndPrintFile(new File("D:\\"));//搜索D盤
}

/**
* 列印出file下的所有目錄包括其子目錄。
* 演算法是深度優先。
*/
public static void getAndPrintFile(File file) {
if(file.isDirectory()) {
System.out.println(file.toString());
File[] fa = file.listFiles();
if(fa.length > 0) {
for(int i = 0; i < fa.length; i++) {
getAndPrintFile(fa[i]); //遞歸調用
}
}
}
else System.out.println(file.toString());
}
}

10、用 java遍歷hadoop分布式文件系統中某個目錄下的全部文件,我的hadoop是單節點的

原因:
你訪問的是本地文件系統而非 , 因為Configuration默認的是在core-default.xml中的屬性fs.default.name默認值是file:///,表示本地文件系統。在我們new Configuration();時會默認載入core-default.xml文件,所以根據這個文件的fs.default.name值使用了本地文件系統。

解決方法:
一般安裝hadoop時都是修改core-site.xml文件,這個文件設置的屬性值一般使用來覆蓋core-default.xml這個文件的,在core-site.xml文件中會設置fs.default.name值為hadoop的namenode的地址以及埠號,如hdfs://localhost:9000,即表示namenode是本機,也就是為分布式。所以我們在連接hdfs時需要指定連接的地址,也就是hadoop集群中core-site.xml中fs.default.name屬性值。所以解決方法有三種:
1)在代碼Configuration conf=new Configuration();之後手動為Configuration對象設置fs.default.name屬性值,如:conf.set("fs.default.name","hdfs:localhost:9000");
2)在代碼的classpath下創建一個文件,在文件中設置fs.default.name屬性值,再使用conf.addResource("文件路徑")將該文件添加到Configuration中;
3)直接將集群的core-site.xml添加到classpath下即可,無需手動添加到Configuration,在new Configuration時會自動載入該文件

與java遍歷伺服器文件相關的知識