流读取导致StringBuilder.toString()乱码的问题及解决

 更新时间:2022年11月08日 09:47:06   作者:Andrew_Yuan  
这篇文章主要介绍了流读取导致StringBuilder.toString()乱码的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

流读取导致StringBuilder.toString()乱码

乱码问题

StringBuilder sb = new StringBuilder();
String s = new String(sb.toString().getBytes("ios8859-1"),"UTF-8");

顺便回忆一下String, StringBuilder, StringBuffer直接的区别:

String对象每次追加字符串的时候都是创建了新的对象,消耗时间最长,性能最低,操作少量数据的时候可以用它;

StringBuilder和StringBuffer每次追加的都是同一个对象,消耗的时间短,性能优良;

StringBuilder比StringBuffer更快一点,因为StringBuffer是线程安全的,支持同步锁,而StringBuilder是线程不安全的,所以在单线程的时候最好使用StringBuilder,多线程的时候则使用线程安全的StringBuffer。

Java StringBuilder toString()方法与示例

StringBuilder类的toString()方法 (StringBuilder Class toString() method)

toString() method is available in java.lang package.

toString()方法在java.lang包中可用。

toString() method is used to represent string denoted by this object (when we create a new string object so first it is created and instantiated to contain the data[set of characters] denoted by this object currently).

toString()方法用于表示此对象表示的字符串(当我们创建一个新的字符串对象时,首先创建并实例化它包含当前由该对象表示的data [字符集])。

toString() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.

toString()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

toString() method does not throw an exception at the time of string representation.

toString()方法在字符串表示时不会引发异常。

Syntax:

句法:

public String toString();

Parameter(s):

参数:

  • It does not accept any parameter.
  • 它不接受任何参数。

Return value:

返回值:

  • The return type of this method is String, it returns the string denotation of this set of characters represented by this object.
  • 此方法的返回类型为String ,它返回此对象表示的这组字符的字符串表示形式。

Example:

例:

// Java program to demonstrate the example 
// of String toString() method of StringBuilder 
 
public class ToString {
    public static void main(String[] args) {
 
        // Creating an StringBuilder object
        StringBuilder st_b = new StringBuilder("Java ");
 
        // By using append() method is to append the given string to 
        // st_b object
 
        st_b.append("World");
 
        // By using toString() method is to represent st_b
        // object to String
        System.out.println("st_b.toString() = " + st_b.toString());
    }
}

Output

输出量

st_b.toString() = Java World

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java8中LocalDateTime与时间戳timestamp的互相转换

    Java8中LocalDateTime与时间戳timestamp的互相转换

    这篇文章主要给大家介绍了关于Java8中LocalDateTime与时间戳timestamp的互相转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • SpringBoot整合Redis哨兵模式的实现示例

    SpringBoot整合Redis哨兵模式的实现示例

    Redis哨兵模式是Redis高可用方案的一种实现方式,通过哨兵来自动实现故障转移,从而保证高可用,本文主要介绍了SpringBoot整合Redis哨兵模式的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • mybatis 解决从列名到属性名的自动映射失败问题

    mybatis 解决从列名到属性名的自动映射失败问题

    这篇文章主要介绍了mybatis 解决从列名到属性名的自动映射失败问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Docker 存储驱动详细介绍

    Docker 存储驱动详细介绍

    这篇文章主要介绍了Docker 存储驱动详细介绍的相关资料,需要的朋友可以参考下
    2016-10-10
  • Java实战项目 图书管理系统

    Java实战项目 图书管理系统

    这篇文章主要介绍了使用java SSM jsp mysql maven设计实现的精品图书管理系统,是一个很好的实例,对大家的学习和工作具有借鉴意义,建议收藏一下
    2021-09-09
  • Deep Module深模块之软件设计

    Deep Module深模块之软件设计

    这篇文章主要介绍了软件设计之Deep Module深模块详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • java泛型详解

    java泛型详解

    本文主要介绍了java泛型的相关知识。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • java.text.DecimalFormat类十进制格式化

    java.text.DecimalFormat类十进制格式化

    这篇文章主要为大家详细介绍了java.text.DecimalFormat类十进制格式化的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • 详解idea文件右键创建New没有Create New Servlet的解决办法

    详解idea文件右键创建New没有Create New Servlet的解决办法

    这篇文章主要介绍了详解idea文件右键创建New没有Create New Servlet的解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • JVM 方法调用之静态分派(详解)

    JVM 方法调用之静态分派(详解)

    下面小编就为大家带来一篇JVM 方法调用之静态分派(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05

最新评论