我正在编写一个Android应用,试图从看起来像这样的JSON获取#text字符串

{
"recenttracks": {
  "track": {
    "artist": {
      "#text": "Jeremy Fisher",
      "mbid": "7be30286-3510-4bc4-a587-51d9ad7c2b47"
 ...


但是由于哈希标签,我一无所获:

Error parsing data org.json.JSONException: No value for


用mbid替换#text可以正常工作。码:

try{
JSONObject container = new JSONObject(readLastFMFeed);
JSONObject recenttracks = container.getJSONObject("recenttracks");
JSONObject track = recenttracks.getJSONObject("track");
JSONObject artist = track.getJSONObject("artist");
String sArtist = track.getString("#text");
Toast.makeText(LoggedIn.this, sArtist, Toast.LENGTH_LONG).show();
     }catch(JSONException e){
          Log.e("log_tag", " Error parsing data "+e.toString());
     }


如何转义哈希标签?

最佳答案

您不需要逃避它。您只是犯了一个愚蠢的错误。代替:

String sArtist = track.getString("#text");


写:

String sArtist = artist.getString("#text");

关于java - 解析JSON时Java中的转义数字符号(哈希标签),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14143739/

10-12 06:37