C++ 创造;转置;带有随机字符的文件

C++ 创造;转置;带有随机字符的文件,c++,C++,我想创建一个程序,创建带有随机字符的“.txt”文件,但可以创建转置的“文件”。接下来,我将添加两个“.txt”文件的示例 文件1 文件2(文件1已转换) 现在,我添加了我编写的代码,这样您就可以看一看,并给我一些关于如何做、修改什么等的想法 #include<iostream> #include<fstream> #include<stdio.h> #include<string> #include<ctime> using nam

我想创建一个程序,创建带有随机字符的“.txt”文件,但可以创建转置的“文件”。接下来,我将添加两个“.txt”文件的示例

文件1

文件2(文件1已转换)

现在,我添加了我编写的代码,这样您就可以看一看,并给我一些关于如何做、修改什么等的想法

#include<iostream>
#include<fstream>
#include<stdio.h>
#include<string>
#include<ctime>

using namespace std;

int main()
{
    int rows, columns, element1;

    char word[10];

    ofstream myfile ("File 1.txt");
    if(myfile)
        srand(1);
    for(rows=0;rows<10;rows++)
    {
        for(columns=0;columns<30;columns++)
        {
            element1 = rand() % 100000 + 1;
            int len = rand () % 4 + 4;
            word [len] = 0;
            while (len) word [--len] = 'A' + rand () % 58;

            myfile<<element1<<word;
            myfile<<"|";
        }
        myfile<<endl;

    }
    myfile.close();


    ofstream myfileS ("File 2.txt");
    if(myfileS)
        srand(1);
    for(columns=0;columns<30;columns++)
    {
        for(rows=0;rows<10;rows++)
        {

            element1 = rand() % 100000 + 1;
            int len = rand () % 4 + 4;
            word [len] = 0;
            while (len) word [--len] = 'A' + rand () % 58;

            myfileS<<element1<<word;
            myfileS<<"|";
        }
        myfileS<<endl;
    }
    myfile.close();



    system("pause");
    return 0;

}
#包括
#包括
#包括
#包括
#包括
使用名称空间std;
int main()
{
int行、列、元素1;
字符字[10];
流myfile(“文件1.txt”);
如果(我的文件)
srand(1);
对于(行=0;行
  • 要创建file1.txt的转置版本,您必须将其内容保留在内存中,并以转置方式访问该内容

  • 当你写作时

    if(myfileS.is_open())
    srand(time(0));
    
    你只是把文件是否打开这一事实的srand条件化。不是下面的情况。我会在每件事周围加上大括号

  • 测试IOStream状态的最佳方法就是将其用作条件

    if (myfileS)
    
      • 要创建file1.txt的转置版本,您必须将其内容保留在内存中,并以转置方式访问该内容

      • 当你写作时

        if(myfileS.is_open())
        srand(time(0));
        
        你只是把文件是否打开这一事实的srand条件化。不是下面的情况。我会在每件事周围加上大括号

      • 测试IOStream状态的最佳方法就是将其用作条件

        if (myfileS)
        

      我真的不明白……你能在我的代码中改写你的意思吗???谢谢编程人员!:)不。如果我这么做,你什么也学不到。当你生成第一个文件时,将写入的字符保留在内存中。要生成第二个文件,请使用你记住的字符。我已经尝试过了,但没有得到我想要的,(尽管我在内存中保留了已写入的字符),那么我就不能用转置的方式写了。我得到的是下一个:我可以得到转置文件的第一行是a | B | C | D |,而不是我想要的a | H | O | V |。你知道我怎么做吗???@thomas如果你仍然有困难,请用你最新的代码更新你的问题(记住了随机生成的字符)我们将尽力提供帮助。@Johnsyweb。谢谢你的兴趣和帮助,Johnsyweb!我已经解决了这个问题!:)实际上我刚刚上传了最终代码,以便对其他人有用。如果你有任何建议,请随时反馈给我:)我真的不明白…你能在我的代码中改写你的意思吗???谢谢编程人员!:)不。如果我这样做,你什么也学不到。当你生成第一个文件时,将写入的字符保留在内存中。要生成第二个文件,请使用你记住的字符。我已经尝试过了,但没有得到我想要的,(尽管我在内存中保留了已写入的字符),那么我就不能用转置的方式写了。我得到的是下一个:我可以得到转置文件的第一行是a | B | C | D |,而不是我想要的a | H | O | V |。你知道我怎么做吗???@thomas如果你仍然有困难,请用你最新的代码更新你的问题(记住了随机生成的字符)我们将尽力提供帮助。@Johnsyweb。谢谢你的兴趣和帮助,Johnsyweb!我已经解决了这个问题!:)实际上我刚刚上传了最终代码,以便对其他人有用。如果你有任何建议,请随时反馈给我:)
      if (myfileS)