android字元串轉義
1. Android轉義字元
在存儲過程中,密碼中有』(單引號),第一反應使用轉義字元。敲上/(反斜杠),失敗告終;
網路一下如下結果,sql
的轉義字元是:'(單引號),所以在密碼中寫』』(兩個單引號),表示一個單引號。c++
的轉義字元是:\sql
的轉義字元是:'(單引號)
2. android調用webservice傳xml格式的字元串過去,服務端接收到的尖括弧被轉義了。要怎樣傳才不會被轉義
加轉義字元\,或者還有一個辦法。比如回車鍵\n會被轉移。你把\n replace一下,換成別的單詞,在服務端收到這個單詞的時候,在轉換回來
3. 如何轉義特殊字元 如在 sqlite 中android
select
* fromtablewhere number like '%/%%' escape '/'...
sqlite3資料庫在搜索的時候,一些特殊的字元需要進行轉義, 具體的轉義如下:
/ -> //
' -> ''
[ -> /[
] -> /]
% -> /%
& -> /&
_ -> /_
( -> /(
) -> /)
需要注意的是,特殊字元並沒有用反斜杠「\」表示轉義符。
復制代碼代碼如下:
public static String sqliteEscape(String keyWord){
keyWord = keyWord.replace("/", "//");
keyWord = keyWord.replace("'", "''");
keyWord = keyWord.replace("[", "/[");
keyWord = keyWord.replace("]", "/]");
keyWord = keyWord.replace("%", "/%");
keyWord = keyWord.replace("&","/&");
keyWord = keyWord.replace("_", "/_");
keyWord = keyWord.replace("(", "/(");
keyWord = keyWord.replace(")", "/)");
return keyWord;
}
4. java-Android怎麼把字元串轉換成Integer/Float/Double 中的一種
java總字元串轉換成其他基本數據類型的方式,可以使用基本數據類型的toString()方法,還有String類型轉換成其他的基本數據類型,示例如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
Integer I1=new Integer(i1);//生成Integer類
Float F1=new Float(f1); //生成Float類
Double D1=new Double(d1); //生成Double類
//分別調用包裝類的toString() 方法轉換為字元串
String si1=I1.toString();
String sf1=F1.toString();
Stringsd1=D1.toString();
Sysytem.out.println("si1"+si1);
Sysytem.out.println("sf1"+sf1);Sysytem.out.println("sd1"+sd1);
String MyNumber ="1234";
int MyInt = Integer.parseInt(MyNumber);
字元串轉換成byte, short, int, float, double, long 等數據類型,可以分別參考Byte, Short,Integer, Float, Double, Long 類的parseXXX 方法。
5. android 字元串傳遞時為什麼轉義字元丟失
傳遞的時候使用的編碼可能和接收的編碼不一致導致字元丟失了,最好雙方使用共同的編碼方式
6. android 字元串轉byte數組
Android 字元串、byte數組與16進制數組間的轉換
<spanstyle="font-family:SimSun;font-size:14px;">//字元串轉換成16進制文字列的方法
publicStringtoHex(Stringstr){
StringhexString="0123456789ABCDEF";
byte[]bytes=str.getBytes();
StringBuilderhex=newStringBuilder(bytes.length*2);
for(inti=0;i<bytes.length;i++){
hex.append(hexString.charAt((bytes[i]&0xf0)>>4));//作用同n/16
hex.append(hexString.charAt((bytes[i]&0x0f)>>0));//作用同n
hex.append('');//中間用空格隔開
}
returnhex.toString();
}
//將16進制數組轉換為字元串
publicstaticStringdecode(Stringbytes){
StringhexString="0123456789ABCDEF";
ByteArrayOutputStreambaos=newByteArrayOutputStream(bytes.length()/2);
//將每2位16進制整數組裝成一個位元組
//for(inti=0;i<bytes.length();i+=2)
//baos.write((hexString.indexOf(bytes.charAt(i))<<4|hexString.indexOf(bytes.charAt(i+1))));
//將每3位(第3位為空格)中的前2位16進制整數組裝成一個位元組
for(inti=0;i<bytes.length();i+=3){
baos.write((hexString.indexOf(bytes.charAt(i))<<4|hexString.indexOf(bytes.charAt(i+1))));
}
returnnewString(baos.toByteArray());
}</span>
詳細
7. android怎麼把引號變成轉義字元
在存儲過程中,密碼中有』(單引號),第一反應使用轉義字元。敲上/(反斜杠),失敗告終; 網路一下如下結果,SQL 的轉義字元是:'(單引號),所以在密碼中寫』』(兩個單引號),表示一個單引號。C++ 的轉義字元是:\SQL 的轉義字元是:'(單引號)
8. Android Json串中添加轉義符
一:解析普通json
1:不帶轉化字元
格式{"type":"ONLINE_SHIPS","message":{"currentTime":1400077615368,"direction":0,"id":1,"latitude":29.5506,"longitude":106.6466}}
JSONObject jsonObject = new JSONObject(jsonstr).getJSONObject("message");
System.out.println("currentTime:"+jsonObject.get("currentTime"));
System.out.println("direction:"+jsonObject.get("direction"));
System.out.println("latitude:"+jsonObject.get("latitude"));
System.out.println("longitude:"+jsonObject.get("longitude"));
jsonarray
JSONObject jo = ja.getJSONArray("cargoList").getJSONObject(0);
2:帶轉義字元的json格式
{"type":"ONLINE_SHIPS","message":"{\"currentTime\":1400077615368,\"direction\":0,\"id\":1,\"latitude\":29.5506,\"longitude\":106.6466}"}
其實也很簡單,先把它轉化成字元串就可以了
JSONObject jsonObject = new JSONObject(jsonstr);
//先通過字元串的方式得到,轉義字元自然會被轉化掉
String jsonstrtemp = jsonObject.getString("message");
System.out.println("message:"+jsonstrtemp);
jsonObject = new JSONObject(jsonstrtemp);
System.out.println("currentTime:"+jsonObject.get("currentTime"));
System.out.println("direction:"+jsonObject.get("direction"));
System.out.println("latitude:"+jsonObject.get("latitude"));
System.out.println("longitude:"+jsonObject.get("longitude"));
二:遍歷Json對象
JSONObject ports = ja.getJSONObject("ports");
Iterator<String> keys = ports.keys();
while(keys.hasNext()){
String key=keys.next();
String value = ports.getString(key);
}
三:使用Gjson,json與對象相互轉化
使用Gson輕松將java對象轉化為json格式
String json = gson.toJson(Object);//得到json形式的字元串
User user = gson.fromJson(json,User.class);//得到對象
轉化成list
import java.util.List;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.lc.function.Action;
import com.lc.models.Groups;
public class MapSearch {
private void ParseData(String _data)
{
Gson gson = new Gson();
List<Groups> ps = gson.fromJson(_data, new TypeToken<List<Groups>>(){}.getType());
System.out.println(ps.get(0).getGroup_name());
}
}