Chào số đông người, bản thân đang có tác dụng 1 Project Console nhưng buộc phải nhập tiếng việt tự Console, mình đã thử giải pháp sau :

package test_1;import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.UnsupportedEncodingException;import java.util.Scanner;public class Test_1 public static void main(String<> args) throws UnsupportedEncodingException BufferedReader in = new BufferedReader(new InputStreamReader(System.in, "UTF8")); Scanner scan = new Scanner(in); System.out.println("Nhập chuỗi giờ đồng hồ Việt: "); String ans = scan.nextLine(); scan.close(); System.out.println("Ket qua: " + ans);

*

Capture.PNG1232×255 2.91 KB

Mọi tín đồ cho bản thân hỏi là sai ở đâu với ạ ? Thanks All


1 lượt thích
giờ đồng hồ việt trong console
hell6w9rld (HelloWorld) August 18, 2018, 4:25pm #2

cho hỏi bạn dùng ide giỏi text editor gì vậy


2 Likes
MeigyokuThmn (明玉) January 5, 2019, 7:42am #3

Vote xài API mới: System.console, xài tính năng này thì ko cần lo ngại về encoding nữa.

Bạn đang xem: Đọc file tiếng việt trong java

BufferedReader in = new BufferedReader(System.console().reader());Nguồn tham khảo: stackoverflow.com

*

Capture.PNG1498×170 4.66 KB
1 lượt thích
kienonline19 (Nguyen Kien) August 18, 2018, 4:25pm #6

Mình trường đoản cú hỏi lý do bạn sử dụng BufferedReader rồi lại thực hiện Scanner làm những gì nữa ???Đây là code mình sửa:

package chap01.basic;import java.io.*;public class test public static void main(String<> args) BufferedReader in = new BufferedReader(new InputStreamReader(System.in));System.out.println("Nhập chuỗi tiếng Việt: ");String ans = "";try ans = in.readLine(); catch (IOException e) // TODO Auto-generated catch blocke.printStackTrace(); finally if(in != null) try in.close(); catch (IOException e) // TODO Auto-generated catch blocke.printStackTrace();System.out.println("Kết quả: " + ans);

fix.png1366×768 80.2 KB
1 like
anon12276517 (anon12276517) August 18, 2018, 4:25pm #7

Đây là bản thân run trên Netbean, nó vẫn bị lỗi vậy
Thanks bạn

image.png1526×754 48.1 KB
kienonline19 (Nguyen Kien) August 18, 2018, 4:25pm #8

Thử lưu file dưới định hình UTF-8 xem sao !


MeigyokuThmn (明玉) August 18, 2018, 4:25pm #9

Người ta phát âm từ console chứ chưa phải từ file, cũng ko ghi ra file.Cái này bug ngay lập tức từ dịp đọc rồi, chứ out.print xử lý tốt Unicode.


2 Likes
MeigyokuThmn (明玉) September 22, 2018, 2:24pm #10

OK, sau đó 1 lúc phân tích thì tôi cũng biết cầm cố nào rồi:

API System.console ko xài được cùng với redirected terminal (VD terminal được tích hợp của IDE), nó trả null, mà nó cũng không tồn tại cho trường đoản cú chỉnh Unicode gì ráo (chỉ có tự động detect encoding thôi), trên mình nhầm lẫn cho bạn xin lỗi.Ở trên những hệ quản lý họ Unix thì chúng ta cứ nhập xuất bình thường không yêu cầu chỉnh thêm, nó mang định UTF8 cả.

Xem thêm: Bài Tập Về Although In Spite Of Despite Có Đáp Án Violet Mới Nhất 2022

Ở trên Windows thì hơi phức tạp:

Output thì tương tự, đi trường đoản cú UTF-16LE (encoding của class String trong Java) qua output Encoder của Java, rồi mới qua output Decoder của terminal. Output Encoding của CMD cũng thường là Cp437, trong NetBeans hoặc Eclipse thì các theo project setting mang định là UTF-8.

Tóm lại bên trên Windows thì thường xuyên là:

Input: UTF-16LE