標題可能不準確,但我希望閱讀本文可以瞭解我想要做什麼。如何在J2ME中將字符數組設置爲C++中的字符
我很善良的被卡在這裏。 Java ME中的新增功能,如您所知,不幸的是,它的方法比Java SE少。
我想完成的是這樣的:我有一個txt,其中的數字用空格分開。 我想把它們放在一個數組中,當數組中的數據以空格分隔時,它們可以像C++中的常規數組那樣工作。「
現在在J2ME中,我所做的(使用Netbeans)是:我將txt帶到了一個流中。後來發送流到一個字節數組,最後我把它轉換成一個char數組。
比方說,原來TXT是:98 2 12 13
部分的代碼是:
InputStream is = getClass().getResourceAsStream("models.txt");
try{
int st_pk1_len = is.available();
byte st_pk1[] = new byte[st_pk1_len];
is.read(st_pk1);
char st_pk1_char[] = new String(st_pk1).toCharArray();
System.out.println(st_pk1_char);
我得到印的是:98 2 12 13
雖然,我的問題當我想訪問索引0時,我只得到數字9而不是98.如果我試圖達到數字12,我將指針指向3,但是我得到的是一個空白空間等等。
我搜索了並嘗試了不同的方法,我發現沒有運氣再次將其轉換爲原始數字。
這可能是一個愚蠢的錯誤,從我身邊或我沒有想到的東西。
是不是有一個簡單的解決方案來解決這個問題?
更新它的工作吧!數組作爲「常規」C++ char數組工作。如果別人需要,或有我同樣的問題,在這裏是如何看起來像:
InputStream is = getClass().getResourceAsStream("st_pk1.txt");
int st_pk1_len = is.available();
byte st_pk1[] = new byte[st_pk1_len];
is.read(st_pk1);
char st_pk1_char[] = new String(st_pk1).toCharArray();
String PreSplitted = new String(st_pk1);
String AftSplit[] = Split(PreSplitted, " ");
如果你想查詢:System.out.println(AftSplit[n]);
爲我所用的蚊蚋的後第二個鏈接分裂法。 Split text in J2ME
感謝。我試過,但我得到「無法找到符號 符號:方法getBytes() 位置:變量st_pk1_char類型char []」。我有導入java.io. *; – user1338101 2012-04-17 08:03:50
ooops!對不起,我編輯而不是發表評論。有人建議「byte [] ba = st_pk1_char.getBytes();」。上面的帖子是我的答案。 – user1338101 2012-04-17 08:18:03