2013-12-13 102 views
0

我需要找到在字符串內出現空值。例字符串 - 查找空值

String x= "isPay=false, isAlreadyRented=false, differenceBetweenStartTimeandNow=, thumbnailUrl=http://"; 
char strline2[] = x.toCharArray(); 
for (i = pos + 50; strline2[i] != '=' && i < strline2.length - 1; i++) 
    ; 
i = i + 1; 
for (i = i; i < strline2.length - 284; i++) { 
    if (strline2[i] == ',') { 
     for (i = i; strline2[i] != '=' && i < strline2.length - 1; i++) 
      ; 
     i = i + 1; 
     br_output.write("\t"); 
    } 
    if (strline2[i] != ',' && strline2[i] != '=') 
     br_output.write(strline2[i]); 
} 

從此我穿越至=,提取值=,之間,並將其存儲在一個文件中。所以當沒有值時,例如differenceBetweenStartTimeandNow=,它應該在文件中寫爲NULL。誰可以幫我這個事。

+2

1)對代碼塊使用一致的邏輯縮進。代碼的縮進旨在幫助人們理解程序流程。 2)請在句子開頭添加大寫字母。還要爲單詞I使用大寫字母,並使用JEE或WAR等縮寫詞和首字母縮略詞。這使人們更容易理解和幫助。 –

+0

1)請正確格式化您的代碼,這是不可讀的(2)爲什麼不同的值分配給每一行'我',但從來沒有用於任何計算? 「我」代表什麼? –

回答

0

嘗試:

String x= "isPay=false, isAlreadyRented=false, differenceBetweenStartTimeandNow=, thumbnailUrl=http://"; 
x = x.replaceAll("=,", "=NULL,"); 

這將替換所有空值,即=,其中= NULL,然後你可以用提取的價值和其存儲的邏輯繼續在該文件中

我希望這有助於

+0

感謝prashant,它工作正常... – Samsudhin

+0

「Id:null sourceType:ENTITY title:Episodes:Friends callSign:null channelNumber:null」與tis字符串同樣的問題,你可以幫助tis prasanth。 「title:」值應該寫爲「null」 – Samsudhin

0

嘗試

if(strline2[i] == '=' && strline2[i+1] == ','){ 
    r_output.write("NULL"); 
    continue 
} 
0

使用split如b所示elow:

 String[] strline2 = x.split("=*,"); 

     for (int i = 0; i < strline2.length; i++) 
     { 
      int index = strline2[i].indexOf('='); 
      if(index < 0) 
       br_output.write("NULL");     
      else 
       br_output.write(strline2[i].substring(index+1, strline2[i].length())); 
     }