Cách tốt nhất để chuyển đổi chuỗi từ Unicode thành ASCII mà không thay đổi độ dài của nó (điều đó rất quan trọng trong trường hợp của tôi)? Ngoài ra, các ký tự không có bất kỳ sự cố chuyển đổi nào cũng phải ở cùng vị trí như trong chuỗi gốc. Vì vậy, một "Ä" phải được chuyển đổi thành "A" và không phải thứ gì đó bí ẩn có nhiều ký tự hơn.Chuyển đổi Unicode sang ASCII mà không thay đổi độ dài chuỗi (bằng Java)
Chỉnh sửa:
@novalis - Ký hiệu như vậy (ví dụ ngôn ngữ Châu Á) chỉ nên được chuyển đổi thành một số trình giữ chỗ. Tôi không quá quan tâm đến những từ đó hay ý nghĩa của chúng.
@MtnViewMark - Tôi phải bảo toàn số lượng ký tự và vị trí của các ký tự có sẵn ASCII trong mọi trường hợp.
Dưới đây là một số thông tin khác: Tôi có một số công cụ khai phá văn bản chỉ có thể xử lý chuỗi ASCII. Hầu hết văn bản cần được xử lý bằng tiếng Anh, nhưng một số văn bản có chứa các ký tự không phải ASCII. Tôi không quan tâm đến những từ đó, nhưng tôi phải chắc chắn rằng những từ tôi quan tâm (những từ chỉ chứa các ký tự ASCII) ở cùng vị trí sau khi chuyển đổi chuỗi.
Bạn định chuyển đổi 口水 雞 thành gì? Tôi không biết làm thế nào người ta có thể diễn tả khái niệm về gà nước bọt trong ba nhân vật ascii. – novalis
Nó không rõ ràng - là bạn đang cố gắng để bảo vệ số lượng ký tự hoặc số byte ... hoặc có lẽ chiều rộng của chuỗi khi được hiển thị? – MtnViewMark
@novalis +1 cho gà nước bọt :-) –