2011-03-21 4 views
3

파일 처리에서이 간단한 것을 도와 줄 수 있습니까? 그것은 성공적으로 실행C++에서 파일에 개행 추가하기

#include<iostream> 
#include<fstream> 
using namespace std; 
int main() 
{ 
    ofstream savefile("anish.txt"); 
savefile<<"hi this is first program i writer" <<"\n this is an experiment"; 
savefile.close(); 
    return 0 ; 
} 

, 나는 내 방식에 따라 텍스트 파일의 출력을 포맷 할 :

다음은 내 코드입니다.

나는이 :

:

안녕하세요이 먼저 프로그램 난 작가이

가 어떻게 내 출력 파일은 다음과 같이 할 수있는 실험을하다

안녕하세요. 첫 번째 프로그램입니다.

I 작가는이 실험

에게 있습니다 내가 그 방법으로 출력 형식을 어떻게해야합니까? 당신이 쓸 수, 그 후

ofstream file; // out file stream 
file.open("anish.txt"); 

:

다시

답변

0

먼저 =)를 원하는 것입니다 또한,

file << "hi this is first program i writer"; 

대신 std::endl를 사용하여 다음 << 연산자를 사용하여 파일 \n :

+6

줄을 인쇄 한 후 출력을 비우려면 std :: endl을 사용하십시오. 그렇지 않으면 '\ n'이 좋습니다. 버퍼를 자주 플러시하면 최적의 디스크 액세스가 불가능해질 수 있습니다. –

+0

Windows XP에서이 내용이 다를 수 있습니까? endl과 "\ n"은 둘 다 내 텍스트 파일에서 알 수없는 문자를 의미하는 작은 빈 사각형으로 표시됩니까? – Instinct

+0

"* 먼저 파일에 쓰려면 스트림을 열어야합니다."- 파일 이름을 std :: ofstream 생성자에 전달하면 파일이 즉시 열리고 별도로 open()을 호출 할 필요가 없습니다. –

11
#include <fstream> 
using namespace std; 

int main(){ 
fstream file; 
file.open("source\\file.ext",ios::out|ios::binary); 
file << "Line 1 goes here \n\n line 2 goes here"; 

// or 

file << "Line 1"; 
file << endl << endl; 
file << "Line 2"; 
file.close(); 
} 

는 희망이 당신이 파일에 쓸 스트림을 열 필요,

+1

+1 새 행에 endl의 일반적인 C++ 관용구를 사용하는 경우. –

+0

나는 새로운 ofstream 파일을 만들고, 그것을 열고, 쓰기를하지만, "\ n"과 "endl 둘 다 어떤 이유로 작동하지 않는다. 나는 문자를 인식하지 못한다는 것을 의미하는 작은 직사각형 상자를 얻었는데, 이것이 Windows XP 나 무엇을 실행해야하는지 확실하지 않은가? – Instinct

+0

Windows에서 표준 줄 바꿈은'\ n \ '이 아니라'\ r \ n'입니다. 스트림이 텍스트 모드 (디폴트)로 열리는 경우,'std :: ofstream' *는 OS의 표준 줄 바꿈이 무엇이든간에'\ n'을 자동으로 변환해야합니다. 그런 일이 일어나지 않는다면 스트림을 바이너리 모드로 열거 나 버그가있는 STL 구현을 가지고 있습니다. 'std :: endl'과 마찬가지로, 스트림에'\ n' 문자를 쓴 다음 스트림을 플러시합니다. –

관련 문제