【已解決】想請教一下如果在Ubuntu情況之下Java檔案管理如何解決 [論壇 - Ubuntu 程式設計]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊

« 1 (2)


回覆: 想請教一下如果在Ubuntu情況之下Java檔案管理如何解決
會員四級
註冊日期:
2010/11/7 0:52
所屬群組:
已註冊使用者
等級: 19
HP : 0 / 464
MP : 148 / 17494
EXP: 57
離線
我都有少少明白你說什麼, 只不過中間的javac test.java, 我就找不到有關的程式碼, 而前者 echo test > test.txt和後者 java app14_1則可以執行

2014/12/22 14:16
應用擴展 工具箱
回覆: 想請教一下如果在Ubuntu情況之下Java檔案管理如何解決
會員四級
註冊日期:
2010/11/7 0:52
所屬群組:
已註冊使用者
等級: 19
HP : 0 / 464
MP : 148 / 17494
EXP: 57
離線
我的意思是指在原始程式碼中, 有一句是這樣寫的:
import java.io.*;
class app14_1
{
public static void main(String args[])throws IOException
{
char data[]=new char[128];
FileReader fr=new FileReader("/usrs/kuuga/Java/test.txt");

int num=fr.read(data);
String str=new String(data, 0, num);
System.out.println("Characters read= "+num);
System.out.println(str);

fr.close();
}
}
我就是指這一句
FileReader fr=new FileReader("/usrs/kuuga/Java/test.txt");
我的意思是指將這一句中有關的/usr/kuuga/Java這個部份刪除掉, 而只剩下:
FileReader fr=new FileReader("test.txt");
這一句, 就可以達到該書的標準答案。。。。

不過, 你那套解決問題的方法也可以, 無論如何我都感謝你啦!

2014/12/22 14:22
應用擴展 工具箱
回覆: 【已解決】想請教一下如果在Ubuntu情況之下Java檔案管理如何解決
會員四級
註冊日期:
2010/11/7 0:52
所屬群組:
已註冊使用者
等級: 19
HP : 0 / 464
MP : 148 / 17494
EXP: 57
離線
import java.io.*;
class app14_1
{
public static void main(String args[])throws IOException
{
char data[ ]=new char[128];
FileReader fr=new FileReader("c:\\Java\\test.txt");

int num=fr.read(data);
String str=new String(data, 0, num);
System.out.println("Characters read= "+num);
System.out.println(str);

fr.close();
}
}

而這就是該書的原始程式, 留意這一句語句是只有MS-Windows才可執行

FileReader fr=new FileReader("c:\\Java\\test.txt");

2014/12/22 14:29
應用擴展 工具箱
回覆: 想請教一下如果在Ubuntu情況之下Java檔案管理如何解決
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 905
MP : 679 / 30260
EXP: 23
離線
Dark.Kiva 寫到:
我都有少少明白你說什麼, 只不過中間的javac test.java, 我就找不到有關的程式碼, 而前者 echo test > test.txt和後者 java app14_1則可以執行


OK! OK!

重新說明...

## 編輯你的java原始碼,存成「test.java」或「app14_1.java」。

$ vi test.java # 不見得用vi。用你慣用的文字編輯器。

然後把下面的原始碼貼上去,存檔。(原始碼指的是「```」和「```」中間的內容)

```
import java.io.*;
class app14_1
{
public static void main(String args[])throws IOException
{
char data[]=new char[128];
//FileReader fr=new FileReader("/usrs/kuuga/Java/test.txt");
FileReader fr=new FileReader("test.txt");

int num=fr.read(data);
String str=new String(data, 0, num);
System.out.println("Characters read= "+num);
System.out.println(str);

fr.close();
}
}
```

## 產生你要測試的檔案「test.txt」。裡面的內容是「test」

$ echo test > test.txt

## 利用「javac」這個程式來編輯你的原始碼「test.java」。

$ javac test.java

編譯完畢後,會出現一個「app14_1.class」,等會要用「java」這個程式來執行它。

## 利用「java」這個程式來執行你編譯好的原始碼

$ java app14_1

因為我安裝的方式跟這篇「如何在 ubuntu 中安裝 Java ?」提到的不太一樣,
但下面的概念是一樣的。
要能執行「java」和「javac」,你要設定你的「執行路徑」,指到「jdk」的「bin資料夾」。
假設你的jdk安裝在「/opt/java/jdk1.8.0_25」,
那麼會有一個資料夾「/opt/java/jdk1.8.0_25/bin」

你只要加入下面一行到你的「~/.bashrc」。(若你是使用bash的話)
export PATH="/opt/java/jdk1.8.0_25/bin:$PATH"


若覺得麻煩,可以考慮使用「NetBeans」這樣的IDE來開發。

報告完畢!




另外好奇一問,你目前是使用什麼來開發和編譯你的java?

2014/12/22 14:41
應用擴展 工具箱
回覆: 【已解決】想請教一下如果在Ubuntu情況之下Java檔案管理如何解決
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 905
MP : 679 / 30260
EXP: 23
離線
Dark.Kiva 寫到:
import java.io.*;
class app14_1
{
public static void main(String args[])throws IOException
{
char data[ ]=new char[128];
FileReader fr=new FileReader("c:\\Java\\test.txt");

int num=fr.read(data);
String str=new String(data, 0, num);
System.out.println("Characters read= "+num);
System.out.println(str);

fr.close();
}
}

而這就是該書的原始程式, 留意這一句語句是只有MS-Windows才可執行

FileReader fr=new FileReader("c:\\Java\\test.txt");


關於路徑的問題,我上面的回覆才請你閱讀下面的文章。

鳥哥的 Linux 私房菜 / 第七章、Linux 檔案與目錄管理 / 1.1 相對路徑與絕對路徑

在「windows」是用「\」隔開,在「unix」系統,則是用「/」隔開。網址也是用「/」隔開。
「FileReader fr=new FileReader("c:\\Java\\test.txt");」會用「\\」,是因為「\」是「脫逸字元」。

2014/12/22 14:49
應用擴展 工具箱
回覆: 想請教一下如果在Ubuntu情況之下Java檔案管理如何解決
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 905
MP : 679 / 30260
EXP: 23
離線
Dark.Kiva 寫到:
不過, 你那套解決問題的方法也可以, 無論如何我都感謝你啦!


不客氣,一起討論,彼此都可以學到一些。
也可以給未來遇到相同問題的人,有線索可以依循,繼而找到答案。




Dark.Kiva 寫到:
我的意思是指在原始程式碼中, 有一句是這樣寫的:
import java.io.*;
class app14_1
{
public static void main(String args[])throws IOException
{
char data[]=new char[128];
FileReader fr=new FileReader("/usrs/kuuga/Java/test.txt");

int num=fr.read(data);
String str=new String(data, 0, num);
System.out.println("Characters read= "+num);
System.out.println(str);

fr.close();
}
}
我就是指這一句
FileReader fr=new FileReader("/usrs/kuuga/Java/test.txt");
我的意思是指將這一句中有關的/usr/kuuga/Java這個部份刪除掉, 而只剩下:
FileReader fr=new FileReader("test.txt");
這一句, 就可以達到該書的標準答案。。。。


應該是我誤會你要表達的意思了,Sorry...

:-p

samwhelp 寫到:
Orz..

不太懂你想要得到什麼解答?

你就嘗試修改一下你的原始碼?
然後執行下面的指令

$ echo test > test.txt
$ javac test.java
$ java app14_1

就會得到答案了
應該花不了你多少時間。
而且也不會讓你的系統爆炸,或是電腦起火。
就勇敢的去「試誤學習」吧



鳥哥的 Linux 私房菜 / 第七章、Linux 檔案與目錄管理 / 1.1 相對路徑與絕對路徑


Dark.Kiva 寫到:
那如果我將這個指令:
FileReader fr=new FileReader("/usrs/kuuga/Java/test.txt");
改為
FileReader fr=new FileReader("test.txt");

在Linux來說不知道可不可以解決問題呢?

2014/12/22 15:14
應用擴展 工具箱
回覆: 【已解決】想請教一下如果在Ubuntu情況之下Java檔案管理如何解決
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 905
MP : 679 / 30260
EXP: 23
離線
Dark.Kiva 寫到:
當然, 這程式我是看洪維恩先生所著的Java2學習一書, 其中有一個語句FileReader fr=new FileReader("/usrs/kuuga/Java/test.txt");原意是用於MS-Windows才可執行, 但我現在所用的是Ubuntu, 那這個語句我應該如何去改, 才可執行呢?


另外在Ubuntu下開發Java,可以參考下面的自學資源,是「以Ubuntu 12.04 LTS當開發環境說明」的。

* 「CodeData / JavaTutorial

另外還有


* 「CodeData / Java 學習之路
* 「CodeData / Java 頻道

下面這個你應該會知道

* 「Java Gossip
* 「Java Essence

2014/12/22 16:05
應用擴展 工具箱

« 1 (2)

 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.