[C++] stream.getline()함수에서 stream의 중간에 \0(null)이 있

gyxor의 이미지

#include<iostream>
#include<fstream>
#include<istream>
#include<sstream>
using namespace std;

int main(){
    
    char data[20] = "abc\0eee";
	char temp1[20] ={0};
	char temp2[20] ={0};
	istringstream is(data);

	is.getline(temp1,4);
	is.getline(temp2,4);
	cout << temp1 << endl << temp2; 
	
	return 0;
}

결과 
abc

위 소스처럼 스트림의 중간에 abc\0eee
null문자가 있는경우에 뒤에 있는 스트림은 못읽었습니다.
null문자를 건너뛰고..
뒤에 있는 스트림을 읽어 들일수 있는 방법은 없나요?
답변부탁드립니다.

buelgsk8er의 이미지

무식하게 한글자씩 읽어들이거나
stream대신에 streambuf에 직접 접근하는 방법이 있을 거 같군요

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.