亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何修復“File.exists()”錯誤的布爾返回?

如何修復“File.exists()”錯誤的布爾返回?

開滿天機 2023-05-10 13:57:28
我目前有一個基本的客戶端-服務器應用程序要開發作為我的任務。該程序僅用于計算質數、GCD 等??蛻舳耸且粋€ GUI,服務器端(本地主機)負責執行計算并將結果發送回客戶端。其中一個要求是,當客戶端用戶點擊“計算”按鈕時,客戶端程序發送客戶端需要服務器執行和計算的特定任務( 、 等)ComputePrime.java的類名。ComputeGCD.java然后服務器需要檢查文件夾中是否存在類文件。如果沒有,則服務器向客戶端發送一條錯誤消息。如果確實存在,那么應該按預期進行計算。但是,出于某種原因,即使文件存在,“File.exists()”指令仍會返回 false。另外,我也需要它在運行時工作。例如,如果我ComputePrime.java在程序執行后刪除 a,它應該返回 false,如果我在運行時將它添加回來,它應該返回 true。我把它放在一個線程中,因為它無限運行只是為了看看它是否適用于動態刪除和添加文件。只要是基本的 Java 代碼,歡迎任何其他想法。Thread t1 = new Thread(){@Overridepublic void run(){    File file = new File("../Contract/ComputePrime.java");    if(file.exists())    {        System.out.println("Exists");    }    else    {        System.out.println("Not Exists");    }    try {        this.sleep(1000);        this.run();    } catch (InterruptedException ex){}}};t1.start();PS 此代碼在服務器端。這是項目文件夾結構。我嘗試使用不同的相對路徑技術,例如 ".././Contract/ComputePrime.java" 、 ".././ComputePrime.java" 、 "~/Contract/ComputePrime.java"、"../Contract /Compute”和“./../Contract/ComoutePrime.java”。即使文件在文件夾中,它們都返回 false。它必須是相對路徑,這樣程序才能在我教授的計算機上運行。我不確定為什么會這樣。在過去的 5 或 6 個小時里,我一直在谷歌上搜索,試圖解決這個問題,但我一無所獲,這就是為什么我要問一個重復的問題。最后,如果找到解決方案,是否有可能在運行時/動態地解決?比如我執行完刪除文件,它應該返回false,當我放回文件時,它應該返回true。先感謝您!更新 嘗試 file.getAbsolutePath 后,這就是我得到的輸出那么,我猜上面代碼中的相對路徑是正確的嗎?
查看完整描述

1 回答

?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

相對路徑是錯誤的。答案:

./src/Server/Contract/ComputePrime.java


查看完整回答
反對 回復 2023-05-10
  • 1 回答
  • 0 關注
  • 237 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號