关闭

StringBuffer.deleteCharAt()方法

标签: StringBuff
478人阅读 评论(0) 收藏 举报
分类:

在和风天气的json数据解析中,数据开头是这样的数据

{ "HeWeather data service 3.0": [
        {
            "aqi": {
            ....

这样导致Android Studio 的GsonFormat方法失败,这是因为数据”HeWeather data service 3.0”的空格和3.0导致,那就删除吧,之后考虑解析的数据要和Bean类匹配,要对接收的json数据也要把空格删除.
参考http://www.cnblogs.com/YouknowGTJ/p/5243695.html博客发现

sbf.deleteCharAt(11);
sbf.deleteCharAt(15);
sbf.delete(22,26);

StringBuffer删除的位置很奇怪,11,15和22–26

{"HeWeather data service 3.0"
0123456789
         10
          11

11的位置是空格,但是下一个空格是16
最后发现,原来,删除了第一个空格后,数据是这样了

{"HeWeatherdata service 3.0"

下一个空格自然是15了


以下是网上StringBuffer.deleteCharAt()的资料

描述

java.lang.StringBuffer.deleteCharAt() 在这个序列中的指定位置删除字符。此序列是由一个char缩短

声明

以下是声明java.lang.StringBuffer.deleteCharAt()方法

public StringBuffer deleteCharAt(int index)

参数

  • index – 这是该指数的字符删除

返回值

此方法返回此对象
异常

StringIndexOutOfBoundsException --如果该索引是负值或大于或等于 length().

实例

下面的例子说明了如何使用

java.lang.StringBuffer.deleteCharAt()方法

package com.yiibai;

import java.lang.*;

public class StringBufferDemo {

  public static void main(String[] args) {

    StringBuffer buff = new StringBuffer("Java lang package");
    System.out.println("buffer = " + buff);

    // deleting character from index 4 to index 9
    buff.delete(4, 9);
    System.out.println("After deletion = " + buff);

    buff = new StringBuffer("amit");
    System.out.println("buffer = " + buff);
    // deleting character at index 2
    buff.deleteCharAt(2);
    System.out.println("After deletion = " + buff);
  }
}

让我们来编译和运行上面的程序,这将产生以下结果:

buffer = Java lang package
After deletion = Java package
buffer = amit
After deletion = amt
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:209433次
    • 积分:3372
    • 等级:
    • 排名:第10439名
    • 原创:119篇
    • 转载:27篇
    • 译文:3篇
    • 评论:111条
    照片墙
    休闲时刻

    博客专栏
    最新评论