Read a text file and write it to a target text file, changing all lowercase to uppercase and double-spacing the output text.
讀取一個文字檔並將其寫入目標檔案,目標檔案中將所有的小寫字母轉換成大寫字母,並以雙倍行距輸出文本。
name.txt
fanzhaoxin
BUSH Will
Sadamu
Micro jaoden
//本程式在VCSP6下編譯通過,使用者建立一個name.txt的檔案,輸出寫入一個name2.txt的檔案中
#include <fstream>
#include <cstdlib>
#include <iostream>
using namespace std;
void double_space(ifstream& f, ofstream& t)
{
char c;
char d;
while (f.get(c))
{
if(c>='a'&&c<='z')
{
d=c-32;
t.put(d);//大小寫替換
}
if (c == '\n')
{ t.put(c);
t.put(c);//遇到斷行符號,輸出兩個斷行符號,即實現雙倍行距
}
if(c<97&&c!='\n'||c>122&&c!='\n')
t.put(c);
}
}
int main()
{
ifstream f_in;
ofstream f_out;
f_in.open("name.txt",ios::in); //讀入一個存名字的檔案,txt格式
f_out.open("name2.txt",ios::out);//輸出一個存名字的檔案,雙倍行距,小寫替換成大寫
if (!f_in)
{
cout << "cannot open " << endl;
exit(1);//can not open return wrong
}
if (!f_out)
{
cout << "cannot open " << endl;
exit(1);//the same as f_in
}
double_space(f_in, f_out);//use the function to achieve your goal
return 0;
}