-1
我一直在編寫代碼來使用C++將文件讀入字符數組。我試圖跳過空白字符,但我在我的輸出數組中獲取空格和換行符。在C++中將文件讀入字符數組
這是標籤聲明爲字符數組的類中的函數。
//Read the label file
80 this->label = new char[vert_count+1];
81 std::ifstream file1;
82 file1.open(label_file);
83 if(file1 != NULL)
84 {
85 char temp; int i = 0;
86 std::cout << "Label file opened successfully" << std::endl;
87 if(i< vert_count)
88 {
89 file1.get(temp);
90 if(temp != ' ' && temp != '\n'&& temp != '\t')
91 {
92 label[i] = temp;
93 i++;
94 }
95 }
96 label[vert_count] = '\0';//putting null character to terminate
97 file1.close();
98 }
99 else
100 std::cout << "label file cannot be opened\n";
101 for (int i = 0; i< vert_count; i++)
102 std::cout <<label[i];
我的輸入文件格式如下圖所示
a
b
c
d
e
f
1
2
H
M
O
我得到的輸出是在啓動字符的一束,然後空格,只有新的生產線。
'i'沒有在你的榜樣初始化。不要以爲它會是0. –
它看起來像我只是從文件中讀取一行。沒有循環。 –
@JimBaldwin更少,1個字符。 –