C++使用填充将字符数组写入文件
C++ write char array to file with padding
我想输出一个像数据库概念一样可读的文件。我的期望是:
Name[10] ContactNo[15] GENDER[10]
====================================
Johnny +60123456789 MALE
Emily +69876543210 FEMALE
Jason +61535648979 MALE
我尝试用:
char name[10],contact[15],gender[10];
//user input here//
ofstream myfile("contact.txt");
myfile>>name>>contact>>gender;
但是输出文件中的所有字符串都是连接起来的,没有任何空格。知道我能做到吗?我尝试这样做是为了当我从具有精确宽度的文件读取数据并将它们放入变量中时,这是一个错误的概念吗?或者有什么建议吗?
流
操纵器std::setw
和std::setfill
的组合将执行您想要的操作:
myfile << std::setfill(' ') << std::left
<< std::setw(10) << name
<< std::setw(15) << contact
<< std::setw(10) << gender;
setfill
允许您指定用于填充的字符。 std::left
、 std::internal
和 std::right
指定填充字符的位置。
我建议您在值之间使用符号t
。 t
插入制表符。然后,你必须写:
myfile>>name>>"t">>contact>>"t">>gender;
我会包括<stdio.h>
并使用printf()
printf ( "%10s %15s %10sn", name, contact, gender );
这应该能让你得到你想要的。
相关文章:
- 如何将内容数组写入文本文件?
- C++将文本文件中的数据读取到结构数组中
- 将值从二维数组输出到文本文件
- C++数据文件、数组和计算赋值
- 如何拆分文件中.txt字母并使用c ++使用数组进行扑克?
- 如何在 C++ 中从文件中读取字符数组(带有一些空格)
- 如何从txt文件中读取多个不同长度的数组?
- 保存/加载大量短数组到二进制文件
- 从二进制文件中读取整数数组
- 如何在 C++ 中将文件中的逗号分隔数字读取到数组中?
- C++ 使用存储在动态数组中的文本文件中的数据查找模式
- C++编程从外部文本文件定义数组大小
- 使用矢量将文本文件中的输入存储到 2D 数组中
- 如何将文本文件的特定行读取到 int 类型的数组中C++?
- 使用 stbi_write_png,如何将 0 和 1 的矩形字节数组转换为单色 png 文件?
- 将系数存储在头文件的数组中("does not name a type"错误)
- 在C++中使用变量而不是"#define"来指定数组大小是不是一种糟糕的做法?(C错误:在文件范围内
- 从文件读取,并写入函数C++中的数组
- 如何从具有两列的.txt文件创建并行数组?
- 读取二维数组文件