Có cách nào để java chuyển đổi int thành ký hiệu ascii không?Java - Thay đổi int thành ascii
Trả lời
Bạn có muốn chuyển đổi int
s để char
s ?:
int yourInt = 33;
char ch = (char) yourInt;
System.out.println(yourInt);
System.out.println(ch);
// Output:
// 33
// !
Hoặc bạn có muốn chuyển đổi int
s để String
s?
int yourInt = 33;
String str = String.valueOf(yourInt);
Hoặc ý bạn là gì?
Nếu trước tiên bạn chuyển đổi int thành char, bạn sẽ có mã ascii của mình.
Ví dụ:
int iAsciiValue = 9; // Currently just the number 9, but we want Tab character
// Put the tab character into a string
String strAsciiTab = Character.toString((char) iAsciiValue);
Trong thực tế trong câu trả lời cuối cùng Chuỗi strAsciiTab = Character.toString ((char) iAsciiValue); phần thiết yếu là (char) iAsciiValue đang thực hiện công việc (Character.toString vô dụng)
Có nghĩa là câu trả lời đầu tiên là đúng char ch = (char) yourInt;
nếu trong yourint = 49 (hoặc 0x31), ch sẽ là '1'
Có rất nhiều cách để chuyển đổi một int để ASCII (tùy thuộc vào nhu cầu của bạn) nhưng đây là một cách để chuyển đổi mỗi số nguyên byte một ký tự ASCII:
private static String toASCII(int value) {
int length = 4;
StringBuilder builder = new StringBuilder(length);
for (int i = length - 1; i >= 0; i--) {
builder.append((char) ((value >> (8 * i)) & 0xFF));
}
return builder.toString();
}
Ví dụ, văn bản ASCII cho "TEST" có thể được biểu diễn dưới dạng mảng byte:
byte[] test = new byte[] { (byte) 0x54, (byte) 0x45, (byte) 0x53, (byte) 0x54 };
sau đó, bạn có thể làm như sau:
int value = ByteBuffer.wrap(test).getInt(); // 1413829460
System.out.println(toASCII(value)); // outputs "TEST"
... do đó về cơ bản chuyển đổi 4 byte trong số nguyên 32 bit thành 4 ký tự ASCII riêng biệt (một ký tự trên mỗi byte).
Trong Java, bạn thực sự muốn sử dụng Integer.toString để chuyển đổi một số nguyên thành giá trị Chuỗi tương ứng của nó. Nếu bạn đang đối phó với chỉ các chữ số 0-9, sau đó bạn có thể sử dụng một cái gì đó như thế này:
private static final char[] DIGITS =
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'};
private static char getDigit(int digitValue) {
assertInRange(digitValue, 0, 9);
return DIGITS[digitValue];
}
Hoặc, tương đương:
private static int ASCII_ZERO = 0x30;
private static char getDigit(int digitValue) {
assertInRange(digitValue, 0, 9);
return ((char) (digitValue + ASCII_ZERO));
}
Bạn có thể chuyển đổi một số để ASCII trong java. ví dụ chuyển đổi một số 1 (cơ sở là 10) thành ASCII.
char k = Character.forDigit(1, 10);
System.out.println("Character: " + k);
System.out.println("Character: " + ((int) k));
Output:
Character: 1
Character: 49
- 1. cách chuyển đổi ascii thành unsigned int
- 2. Microsoft.VisualBasic.FileIO.TextFieldParser thay đổi ± Ascii 241 thành? Ascii 63
- 3. Thay đổi INT thành BigInt
- 4. Làm thế nào để chuyển đổi một ASCII char thành giá trị int ASCII của nó?
- 5. Java - cấu trúc thay đổi int enums
- 6. Chuyển mã ASCII thành char trong Java
- 7. Char để int chuyển đổi để có được ASCII
- 8. Chuyển đổi mã ascii thành int và ngược lại trong python (nhanh)
- 9. Chuyển đổi giá trị int thành unicode
- 10. ASCII char sang int chuyển đổi trong C
- 11. Chuyển đổi Unicode sang ASCII mà không thay đổi độ dài chuỗi (bằng Java)
- 12. Cách chuyển đổi int * thành int
- 13. java: chuyển đổi chuỗi nhị phân thành int
- 14. Java chuyển đổi một int thành giờ và phút
- 15. Chuyển đổi byte ASCII [] thành chuỗi
- 16. Thay đổi loại cột có số từ varchar thành int
- 17. Thay đổi Cột trong MySQL từ int thành gấp đôi?
- 18. Chuyển đổi từ chuỗi ASCII được mã hóa thành Hex thành ASCII thuần tuý?
- 19. chuyển đổi int thành wstring
- 20. Chuyển đổi int thành booleans
- 21. Chuyển đổi từ null thành int?
- 22. Máy chủ SQL: chuyển đổi varchar thành INT
- 23. ISSUE: Mysql chuyển đổi Enum thành Int
- 24. cố gắng thay đổi chuỗi -> int
- 25. Chuyển đổi IEnumerable <int> thành int []
- 26. Chuyển đổi [IO Int] thành IO [Int] trong Haskell?
- 27. Làm thế nào để chuyển đổi mảng int thành int?
- 28. Python - Chuyển đổi Hex thành INT/CHAR
- 29. Cách chuyển đổi chuỗi thành bit và sau đó thành mảng int - java
- 30. hạ cấp các ký tự không phải ascii thành tương đương ASCII 7 bit gần nhất (tốt nhất là Java)