s1. 取得文件路徑。
s2. 對照 /etc/mtab ,找到所在的分區。
s3. 調用命令 df ,取輸出。
2. java在linux下可以寫文件,但不能讀取
看一下載linux下的讀的用戶和寫的用戶是同一個不?許可權有沒有??還有,linux系統和windows系統的路徑分隔符是不同的.
3. java如何拼接linux目錄下文件路徑
java在讀取linux目錄時可以使用FileSystem類,FileSystem創建IO流時需要Path子類,新建Path只需要傳入String類型的路徑即可。
所以專拼接路徑實際上就是屬對String的拼接。
String有多種方法可以拼接,最簡單的是直接用+號來接。
4. linux 下java讀取配置文件
linux下也是文件系統,同樣的也可以使用file對象來讀取配置文件信息,示例如下:
import java.io.*;
public class FileToString {
public static String readFile(String fileName) {
String output = "";
File file = new File(fileName);//建立file對象
if(file.exists()){//判斷是否存在
if(file.isFile()){//判斷是否文件
try{
BufferedReader input = new BufferedReader (new FileReader(file));
StringBuffer buffer = new StringBuffer();
String text;
while((text = input.readLine()) != null)
buffer.append(text +"/n");//讀取內容進行拼接。
output = buffer.toString();
}
catch(IOException ioException){
System.err.println("File Error!");
}
}
else if(file.isDirectory()){//是否為文件夾
String[] dir = file.list();
output += "Directory contents:/n";
for(int i=0; i<dir.length; i++){
output += dir[i] +"/n";
}
}
}
else{
System.err.println("Does not exist!");
}
return output;
}
}
5. java能不能獲取遠程linux伺服器的文件目錄結構
這個要看你主要是用來干什麼,和怎麼用。
簡單的,你用java實現個ssh協議(網上有現成的開源實現),通過協議遠程登錄linux。
然後執行 ls 之類的命令,就可以獲取了。
6. java程序怎樣讀取linux系統下的文件
importjava.io.*;
publicclassFileToString{
publicstaticStringreadFile(StringfileName){
Stringoutput="";
Filefile=newFile(fileName);
if(file.exists()){
if(file.isFile()){
try{
BufferedReaderinput=newBufferedReader(newFileReader(file));
StringBufferbuffer=newStringBuffer();
Stringtext;
while((text=input.readLine())!=null)
buffer.append(text+"/n");
output=buffer.toString();
}
catch(IOExceptionioException){
System.err.println("FileError!");
}
}
elseif(file.isDirectory()){
String[]dir=file.list();
output+="Directorycontents:/n";
for(inti=0;i<dir.length;i++){
output+=dir[i]+"/n";
}
}
}
else{
System.err.println("Doesnotexist!");
}
returnoutput;
}
publicstaticvoidmain(Stringargs[]){
Stringstr=readFile("/home/1.txt");
System.out.print(str);
}
}
7. java window和linux FileInputStream讀文件路徑問題
Linux系統下的文件夾路徑和window下的不一樣,windows下就需要寫成「\\photos"因為java會把第一個"\"當成轉義字元給」吃了「。但在linux下就是
「/photos」呵呵,是不是很郁悶阿。所以你的if (myFile.newFolder(path+"\\photos"))
就應該寫成if (myFile.newFolder(path+"/photos"))以此類推。
public static final String FILE_SEPARATOR = System.getProperties()。getProperty("file.separator");
文件分隔符(在 UNIX 系統中是「/」),window 是"\"
為了程序的可移植性,使用File.separator來寫路徑。
File(String pathname)
通過將給定路徑名字元串轉換為抽象路徑名來創建一個新 File 實例。
public static final String separator
與系統有關的默認名稱分隔符,為了方便,它被表示為一個字元串。此字元串只包含一個字元,即 separatorChar。
public static final char separatorChar
與系統有關的默認名稱分隔符。此欄位被初始化為包含系統屬性 file.separator 值的第一個字元。在 UNIX 系統上,此欄位的值為 '/';在 Microsoft Windows 系統上,它為 '\\'。
注意:
路徑名字元串與抽象路徑名之間的轉換與系統有關。將抽象路徑名轉換為路徑名字元串時,每個名稱與下一個名稱之間用一個默認分隔符 隔開。默認名稱分隔符由系統屬性 file.separator 定義,可通過此類的公共靜態欄位 separator 和 separatorChar 使其可用。將路徑名字元串轉換為抽象路徑名時,可以使用默認名稱分隔符或者底層系統支持的任何其他名稱分隔符來分隔其中的名稱
System.getProperty("user.dir") 獲取工程路徑名
System.getProperty("file.separator").equals("/") 判斷linux的方法。
用File.separator這個可以直接替換路徑問題,不需要判斷