VB.NET Code:
'设置枚举
Enum NewlineCharacter
Unknown=0
CR=1'早期Macintosh系统的换行符
LF=2'Unix/Linux系统的换行符
CRLF=3'Windows/DOS系统的换行符
End Enum
'函数
Function GetNewlineCharacter(Byval Expression As String) As NewlineCharacter
Dim iscr As Boolean = False
Dim islf As Boolean = False
Dim iscrlf As Boolean = False
For Each i As Char In Expression'使用For循环,分析每一个字符
'优先分析CRLF
If iscr = True Then'判断上一个字符是否是 CR
If i = Chr(10) Then'判断当前字符是否是LF,如果是就将iscrlf设置为True,否则将退出For循环,并停止分析。
iscrlf = True
Else
Exit For
End If
End If
If i = Chr(13) Then'判断当前字符是否是CR
iscr = True
End If
If i = Chr(10) Then'判断当前字符是否是LF
islf = True
End If
Next
'函数的返回值
If iscrlf = True Then
Return NewlineCharacter.CRLF
ElseIf iscr = True Then
Return NewlineCharacter.CR
ElseIf islf = True Then
Return NewlineCharacter.LF
Else
Return NewlineCharacter.Unknown
End If
End Function