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这个可以直接替换路径问题,不需要判断