C++ 如何在.txt文件中拆分字母并按住';带c+数组的em+;?

C++ 如何在.txt文件中拆分字母并按住';带c+数组的em+;?,c++,arrays,C++,Arrays,我有一个txt文件。以下是索引: 1 A D C V K O F R W 2 Y I J M 3 Q P 4 E S Z N L 我得到了一个名为stringreaden[9]的变量中的字母 readen[0]` = "A D C V K O F R W"; readen[1]` = "Y I J M"; 像这样,他们之间有空白。我需要一个接一个地抓住所有的字母,比如: readen[0]` = "A"; readen[1]` = "W"; (无空白) 这是我的密码: string

我有一个txt文件。以下是索引:

1 A D C V K O F R W 
2 Y I J M 
3 Q P 
4 E S Z N L 
我得到了一个名为
stringreaden[9]的变量中的字母

readen[0]` = "A D C V K O F R W";
readen[1]` = "Y I J M";
像这样,他们之间有空白。我需要一个接一个地抓住所有的字母,比如:

readen[0]` = "A";
readen[1]` = "W";
(无空白)

这是我的密码:

string read;
string readen[9];
char numbers[9];
ifstream file;
file.open("deneme.txt", ios::in);

for (int i = 0; !file.eof(); i++) 
{
    numbers[i] = file.get();
    file.get();
    getline(file,read);
    readen[i] = read;
}
正如我所说的,现在是这样-->
readen[0]
=“A D C V K O F R W”


保持它的状态最好的方法是什么?

我解决了它。我打了个圈。每次,
letters[x]=file.get();get()
首先它接受字母,然后忽略1个空白字符。

请注意。您想要
readen[0]=“A”
还是
readen[0]=“A”
?这些是不同的东西。我知道它们是不同的,但现在不要紧。你必须在每行的开头存储整数吗?你想把所有字母都放在一个数组(一维)中吗?是的,我必须把它们分开存储。一个数组中的整数,另一个数组中的字母实际上我想保持它们像
字符数字[4];字符[19]getline(file,read,”)
这种方式,我想我可以保留没有空格的字母,但是文本是
adcvk
,我得到的是
ACK
。程序停止并给出错误。@hoizery“并像char x=letters[5]那样使用它们”。您可以用同样的方法使用向量。
#include <cctype>  // std::isalpha()
#include <vector>
#include <iostream>
#include <fstream>

int main()
{
    std::ifstream is{ "deneme.txt" };
    std::vector<int> numbers;
    std::vector<char> letters;

    for (;;) {
        int number;
        int ch;

        // as long as extraction of an integer fails extract characters
        while (!(is >> number) && (is.clear(), (ch = is.get()) != EOF)) {
            if(std::isalpha(static_cast<unsigned>(ch)))
                letters.push_back(ch);
        }

        if (!is) break;

        numbers.push_back(number);
    }

    std::cout << "Numbers: ";
    for (auto const &n : numbers)
        std::cout << n << ' ';

    std::cout << "\nLetters: ";
    for (auto const &l : letters)
        std::cout << l << ' ';
    std::cout.put('\n');
}