vb如何去掉最后的换行符?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vb如何去掉最后的换行符?相关的知识,希望对你有一定的参考价值。

Open App.Path & "\日志.txt" For Input As #1
n = 0
Do While Not EOF(1)
Line Input #1, tmp
If tmp <> "" And Trim(tmp) <> "" Then
sQw = sQw + tmp & vbCrLf
n = n + 1
End If
Loop
Close #1
如何去掉 sQw的最后一个vbcrlf?

这是VB在读多行文件时出现的问题,最后行多了换行字符。

可以用Left 函数来取去除最后换行字符的文本。

Left 函数

返回 Variant
(String),其中包含字符串中从左边算起指定数量的字符。

Len 函数

返回 Long,其中包含字符串内字符的数目。

Option Explicit
    Dim s As String
    Dim i As Long
    Dim fname As String
    Dim strWj As String
    
Private Sub Command1_Click()
    \' 设置“CancelError”为 True
    CommonDialog1.CancelError = True
    On Error GoTo ErrHandler
    \' 设置标志
    CommonDialog1.Flags = cdlOFNHideReadOnly
    \' 设置过滤器
    CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files" & _
    "(*.txt)|*.txt|Batch Files (*.bat)|*.bat"
    \' 指定缺省的过滤器
    CommonDialog1.FilterIndex = 2
    \' 显示“打开”对话框
    CommonDialog1.ShowOpen
    \' 显示选定文件的名字
    \'MsgBox CommonDialog1.FileName
    Open CommonDialog1.FileName For Input As #1
        Do Until EOF(1)
            Line Input #1, s
            strWj = strWj & s & vbCrLf
            i = i + 1
        Loop
        Text3 = i
    Close #1
    Text1 = Left(strWj, Len(strWj) - 2) \'去除读入文本多余的换行符。
    Debug.Print Len(strWj)
    Debug.Print Len(Text1)
    Exit Sub
    
ErrHandler:
    \' 用户按了“取消”按钮
    Exit Sub
End Sub

参考技术A 1个换行符号应该是2个字符,所以:
sQw = Left(sQw,Len(sQw)-2)本回答被提问者采纳
参考技术B vbCrLf=chr(10)+chr(13)占两位
所以只要从左边开始截取长度-2位就行了
sQw=left(sQw,len(sQw-2))
参考技术C sQw = replace(sQw,vbCrLf,"")

C语言如何去掉字符串中换行符

我的字符串是char a[]="myfile.txt/r".
当我printf("%s",a)的时候,会发现,他会输出换行,我想把在字符串中去掉换行符,请问怎么写???

C语言可以使用Replace函数去掉字符串中换行符。即Replace(字符串,'\n','')。

Replace函数语法为Replace (Expression, Find, ReplaceWith [, Start] [, Count] [, Compare])。

Expression必需的。代表将要执行替换操作的字符串。

Find必需的。代表要搜索的字符串。

ReplaceWith必需的。代表用于替换的字符串。

Start可选的。代表决定从Expression开头向结尾数的第几位开始搜索,默认值为1。

Count可选的。代表限制进行替换的次数,默认值为-1,即进行所有的替换。

Compare可选的。代表决定判断子字符串的比较方式。

扩展资料:

Replace函数如果搜索的字符串是一个数组,那么它将返回一个数组。如果搜索的字符串是一个数组,那么它将对数组中的每个元素进行查找和替换。

如果同时需要对某个数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余的元素将用空字符串进行替换。如果是对一个数组进行查找,但只对一个字符串进行替换,那么替代字符串将对所有查找到的值起作用

参考技术A

C语言如何去掉字符串中换行符,

只需要循环遍历字符串中的换行符改成\\0就行了

#include <stdio.h>
void main()

char a[]="myfile.txt/r".;
int i,j,L,n=0;
L = strlen(a);
for (i=0;i<=L-n;i++) 
  if(a[i] == '\\r') 
  
    a[i] = 0;
  
printf("%s",a);

参考技术B 下面程序过滤掉所有回车符号 "\r".
#include <stdio.h>
void main()

char a[]="myfile\r.txt\r";
int i,j,L,n=0;
L = strlen(a);
for (i=0;i<=L-n;i++) if (a[i] == '\r')
for (j=i;j<=L-1-n;j++) a[j]=a[j+1];
n++;

printf("%s",a);
参考技术C a[strlen(a)-1]=0;
printf("%s",a);
参考技术D if(a[strlen(a)-1])=='\n') a[strlen(a)-1])=0;
if(a[strlen(a)-1])=='\r') a[strlen(a)-1])=0;
printf( "%s", a );

以上是关于vb如何去掉最后的换行符?的主要内容,如果未能解决你的问题,请参考以下文章

python按行读取文件,如何去掉换行符"\n

python按行读取文件,如何去掉换行符"\n

notepad++ 去掉换行怎么操作

在oracle里如何去掉数据后的回车换行符

在oracle里如何去掉数据后的回车换行符

在oracle里如何去掉数据后的回车换行符