java java.util.Scanner设置编码

在Java中,Scanner类默认使用系统的默认字符编码来读取输入。如果需要设置特定的编码,可以使用InputStreamReader来创建一个InputStream,然后将其传递给Scanner的构造函数。

下面是一个示例代码:

java 复制代码
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        try {
            InputStream inputStream = System.in;
            InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "UTF-8");
            Scanner scanner = new Scanner(inputStreamReader);

            System.out.println("请输入文字:");
            String input = scanner.nextLine();
            System.out.println("输入的文字是:" + input);

            scanner.close();
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }
}

在这个示例中,我们设置了输入流的编码为UTF-8。然后使用Scanner的nextLine方法来读取用户输入的文字。

相关推荐
wuminyu2 小时前
Kafka中sendfile与mmap实现机制解析
java·linux·c语言·jvm·c++
考虑考虑3 小时前
Java实现hmacsha256加密算法
java·后端·java ee
captain3763 小时前
▲网络原理(2)-TCP
java·服务器·网络·tcp/ip·java-ee
MetaLite4 小时前
SpringBoot接口分层规范-外网网关内部服务与参数边界
java·数据库·spring boot
Co_Hui4 小时前
Java 线程状态
java
土司大王4 小时前
LeetCode hot100——35.搜索插入位置:Java 二分模板、左闭右开区间与插入点分析
java·算法·leetcode
言乐64 小时前
Python加速器4跨境网络加速器
运维·服务器·开发语言·网络·python
土司大王4 小时前
LeetCode hot100——34.在排序数组中查找元素的第一个和最后一个位置:Java 二分模板、边界分析
java·算法·leetcode
金金计较.5 小时前
Go语言-3
java·开发语言·golang
Wang's Blog6 小时前
Java框架快速入门: Spring Security+OAuth2之元注解简化权限表达式
java·数据库·spring