删除行末空白字符
时间: 2023-07-25 22:12:31 浏览: 116
你可以使用文本编辑器或终端命令来删除行末空白字符。在文本编辑器中,可以使用查找和替换功能,将行末空白字符替换为空格或删除。在终端中,可以使用以下命令:
```
sed -i 's/[ \t]*$//' filename
```
这个命令会将文件中所有行末的空格和制表符删除。注意要替换的是行末空白字符,而不是行末本身。
相关问题
删除行末空白字符代码
删除行末空白字符的代码如下:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
fgets(str, 100, stdin); // 从标准输入中读取字符串
int len = strlen(str);
while(len > 0 && (str[len-1] == ' ' || str[len-1] == '\t' || str[len-1] == '\n')) {
str[len-1] = '\0'; // 将行末空白字符替换为字符串结束符
len--;
}
printf("去除行末空白字符后的字符串为: %s\n", str);
return 0;
}
```
代码中使用了循环,从字符串末尾开始遍历,当遇到空格、制表符或换行符时,将其替换为字符串结束符'\0'。然后再向前遍历,直到遇到非空白字符为止,即可删除行末空白字符。
6-2 *删除行末空白字符 分数 15 作者 李祥 单位 湖北经济学院 有少数初学者编程时,没有留意行末多余的空白字符,这不是好的编程习惯。现在请你编写一个函数,把初学者源程序文件中每行末尾多余的空白字符全都删去。 函数原型 // 删除行末空白字符 void Cut(FILE *src, FILE *dst); 说明:参数 src 和 dst 均为文件指针,其中:src 指示初学者的源程序文件,dst 指示整理后的源程序文件。 注: 源程序中所能输入的空白字符仅限于空格符 ' ' (<SP>) 和 制表符 '\t' (<HT>)。 最后一行末尾可能没有换行符。 每一行的长度不限。 在 Unix 或 Linux 系统下,源程序文件每行末尾为一个换行符 '\n' (<LF>),而在 Dos 或 Windows 系统下,源程序文件每行末尾为一个回车符 '\r' (<CR>) 和一个换行符 '\n' (<LF>)。 裁判程序 #include <stdio.h> #include <ctype.h> #include <string.h> // 删除行末空白字符 void Cut(FILE *src, FILE *dst); int main() { char sname[1024], dname[1024]; FILE *sfile, *dfile; gets(sname); gets(dname); sfile = fopen(sname, "rb"); if (!sfile) { printf("%s 无法打开!\n", sfile); } dfile = fopen(dname, "wb"); if (!dfile) { printf("%s 无法打开!\n", dfile); } if (sfile && dfile) { printf("正在整理..."); Cut(sfile, dfile); puts("整理完成!"); } if (sfile) { fclose(sfile); } if (dfile) { fclose(dfile); } return 0; } /* 你提交的代码将被嵌在这里 */
下面是我编写的函数 Cut(FILE *src, FILE *dst),可以删除源文件中每行末尾的多余空白字符,并将整理后的内容写入目标文件。
```
void Cut(FILE *src, FILE *dst)
{
char buffer[1024];
int len, i;
while (fgets(buffer, sizeof(buffer), src))
{
len = strlen(buffer);
i = len - 1;
while (i >= 0 && (buffer[i] == ' ' || buffer[i] == '\t' || buffer[i] == '\r' || buffer[i] == '\n'))
{
buffer[i] = '\0';
i--;
}
fputs(buffer, dst);
if (i < len - 1 && buffer[i+1] != '\n') // 输入的最后一行可能没有换行符
{
fputc('\n', dst);
}
}
}
```
函数的实现思路是:读取源文件的每一行,从行末开始,判断每个字符是否为空白字符(空格符 ' ',制表符 '\t',回车符 '\r',换行符 '\n'),若是则将其替换为字符串结束符 '\0'。最终将整理后的内容写入目标文件,同时在每行末尾添加换行符(除了输入的最后一行可能没有换行符)。