gpt4 book ai didi

java - 如何使用 Java 在任何操作系统中创建隐藏文件

转载 作者:行者123 更新时间:2023-12-04 05:12:21 24 4
gpt4 key购买 nike

我有这段代码试图在我的 Json 文件中创建和写入,但我怎么能在任何操作系统(Windows 或 Mac)中隐藏

File file = new File(System.getProperty("user.home") + File.separator + "Documents" + File.separator + "targetappConfig.json");

if (!(file.exists())) {

org.json.simple.JSONArray userDetails = new org.json.simple.JSONArray();
userDetails.add(userDetail);
jsonObj.put("users", userDetails);
FileWriter fileWriter = new FileWriter(file);
fileWriter.write(jsonObj.toString());
fileWriter.flush();
fileWriter.close();
}

最佳答案

我所做的是创建一个 validator ,并为每个操作系统编码我的文件并将其保存在应用程序目录中(windows:appdata,mac:Application Suport)。这似乎是最容易做到的。

public class OSValidator {
private static String OS = System.getProperty("os.name").toLowerCase();

public static boolean isWindows(){
return (OS.indexOf("win")>=0);
}

public static boolean isMac(){
return (OS.indexOf("mac")>=0);
}

public static boolean isUnix() {
return (OS.indexOf("nix") >=0 || OS.indexOf("nux") >=0 || OS.indexOf("aix") >= 0);
}

public static boolean isSolaris(){
return (OS.indexOf("sunos") >=0);
}
}



if (OSValidator.isWindows()) {
System.out.println("This is Windows");
file = new File(System.getenv("APPDATA") + File.separator + "TargetApp" + File.separator +"config.json");

if (!file.exists()) {
try {
FileUtils.forceMkdir(file.getParentFile());
} catch (IOException ex) {
Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
}
}

} else if (OSValidator.isMac()) {
System.out.println("This is Mac");

file = new File(System.getProperty("user.home") + File.separator + "Library" + File.separator + "Application Support"
+ File.separator + "config.json");
}

关于java - 如何使用 Java 在任何操作系统中创建隐藏文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14754322/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com