Tôi có một mảng byte. Giá trị 8 bit của mỗi byte là những gì tôi muốn làm các ký tự trong chuỗi của tôi. Bạn có thể nghĩ về các giá trị 8 bit của tôi như ASCII, ANSI, UTF-8, ISO-8859-1, các chỉ số nhiệt độ hàng ngày, khoảng cách tính bằng inch từ một điểm trên một đường hoặc bất kỳ thứ gì bạn muốn. Nó không liên quan.Cách chuyển đổi byte [] thành Chuỗi không mã hóa, không mất dữ liệu
Khi tôi hoàn tất. char tại vị trí N trong chuỗi của tôi phải có cùng giá trị với byte tại vị trí N. Tức là, 8 bit bậc cao phải là 0 và thứ tự thấp 8 bit phải giống như byte nguồn.
Tôi sử dụng Mã hóa nào để chỉ đơn giản là ánh xạ byte thành ký tự mà không có thay đổi?
Chỉ cần tò mò cần thiết cho điều này là gì. Chuỗi ký tự đó sẽ không hữu ích - nó sẽ không thể sử dụng để hiển thị hoặc in ấn, và có lẽ sẽ không đặt độc đáo với bất kỳ hệ thống bên ngoài nào. Tại sao chuyển đổi nó từ các byte? –
@JoeEnos tại sao chuỗi không thể sử dụng được để hiển thị hoặc in? Tùy thuộc vào dữ liệu trong mảng byte, nó có thể rất tốt. – phoog
@JoeEnos, mục đích của các câu hỏi như tôi đã làm là cố gắng giữ cho không nhận được một loạt các "tại sao bạn làm điều này?" và "cần phải bỏ qua mã hóa là một lá cờ đỏ cho thấy giải pháp của bạn chỉ là" câu trả lời sai ". Câu hỏi đặt ra là vấn đề của tôi, hay đơn giản là làm thế nào để biến một mảng byte thành một chuỗi mà không có tất cả những kẻ thông minh ở Microsoft đang trộn dữ liệu của tôi bởi vì họ nghĩ rằng họ biết rõ hơn tôi làm những gì tôi đang cố gắng làm. :-) – Craig