Tôi cần kiểm tra xem một tỉnh của Trung Quốc có được chứa trong một địa chỉ bằng tiếng Hoa hay không.Đối sánh mẫu với ký tự Trung Quốc (được mã hóa bằng UTF-8) trong Java
Tôi có thể đọc và viết các ký tự tiếng Trung dễ dàng.
Tôi đã cố gắng sử dụng phương thức String của indexOf() để kiểm tra xem một tỉnh (ví dụ: 广东) có nằm trong một địa chỉ (中国 广东) hay không. Tuy nhiên, điều này luôn trả về -1.
Khi tôi cố gắng kiểm tra các con số (ví dụ 103 có được chứa trong 9910399) thì nó hoạt động tốt.
Tôi có cần phải làm điều gì đó khác để xử lý đối sánh chuỗi UTF-8 không? Cảm ơn. Matt
Java 'String' luôn là UTF-16 trong nội bộ, vì vậy bất kỳ vấn đề nào bạn gặp phải đều không phải là UTF-8 có liên quan. Bạn có chắc chắn 100% rằng các ký tự trong chuỗi là chính xác những ký tự bạn đang tìm kiếm không? Kiểm tra với 'System.out.println ((int) s.charAt (i))' trên cả hai mặt. –
Ví dụ của bạn làm việc cho tôi, bạn đã kiểm tra xem tệp .java của bạn có lưu bằng mã hóa đúng không? –