30/09/2018, 17:11

Lúc ta ghi vào file nhị phân thì dấu ' ' chuyển hoá thành gì?

Chào mọi người. Sau Khi học xong file nhị phân mình có 1 thắc mắc . lúc ta ghi vào file nhị phân thì dấu ‘ ’ chuyển hoá thành gì ?
mình có lên mạng hỏi thì có người bảo nó sẽ trở thành các số như 10 hay 13 tuỳ thuộc vào HĐH máy tính . Mình tưởng nhị phân chỉ có 0 vs 1 mong mọi người giải thích giúp em.
Chốt : ta có thể nhận biết dấu xuống dòng bằng cách nào ? ( Do mình thấy File nhị phân thường lấy 1 khối bytes )
Cảm ơn mọi người đã dành thời gian theo dõi topic !

Mai Anh Dũng viết 19:15 ngày 30/09/2018

Mình tưởng nhị phân chỉ có 0 vs 1 mong mọi người giải thích giúp em.

Hệ nhị phân chỉ có 0 và 1, nhưng ta dùng 0 và 1 để thể hiện mọi số nguyên.

10 = 0b1010
13 = 0b1101

Chốt : ta có thể nhận biết dấu xuống dòng bằng cách nào ? ( Do mình thấy File nhị phân thường lấy 1 khối bytes )

Đọc từng byte một, đọc lên so sánh với \n. Đạt chưa làm bao giờ nhưng Đạt nghĩ là có thể so sánh với \n trực tiếp.

if ( byte_vua_doc == '\n' ) {
}
Trần Quốc Trung viết 19:28 ngày 30/09/2018

Để hiểu rõ vấn đề này, bạn có thể tra bảng mã ASCII, trong đó có ghi rõ giá trị 10 kiểu decimal tương ứng với 0x0A kiểu hex, và nó quy định đây là dấu xuống dòng với chú thích là New Line. HDH sẽ tự hiểu và xuống dòng trong file mà thôi.
Còn ta có thể nhận biết bằng cách đọc từng byte ra và so sánh có thể là với: byte[i] == ‘n’ hoặc byte[i] == 0x0A hoặc byte[i] == 10, tùy thích.

Thai Hoc Nguyen viết 19:22 ngày 30/09/2018

Cho em xin mạn phép hói 1 câu hỏi ngu : Khi Mà ta đọc từng byte

Đọc từng byte một, đọc lên so sánh với \n. Đạt chưa làm bao giờ nhưng Đạt nghĩ là có thể so sánh với \n trực tiếp.

FIle Của em 
Nguyen
Thai
Hoc

ta đọc từng ký tự và chuyển nó ra kiểu thập phân đúng ko mọi người nhỉ ?

Trần Quốc Trung viết 19:25 ngày 30/09/2018

ta đọc từng ký tự và chuyển nó ra kiểu thập phân đúng ko mọi người nhỉ ?

Không cần phải chuyển, bạn chỉ cần để ký tự cần so sánh trong ngoặc đơn là được rồi, ví dụ:
Byte[i] = ‘o’;

Bài liên quan
0