投稿者 魔界の仮面弁士  (社会人) 投稿日時 2016/10/7 11:42:58
> マイクロソフトさんの例では、以下のようなものでした。
> Dim stringSep() As String = {"[stp]"}
> sArray = sBunsho.Split(stringSep,StringSplitOptions.RemoveEmptyEntries)

今回のケースなら、こうなるべきでしたね。
Dim stringSep() As String = {vbCrLf}
sArray = sBunsho.Split(stringSep, StringSplitOptions.RemoveEmptyEntries)



> sArray = CStr(sBunsho).Split({vbCrLf}, StringSplitOptions.None) 
> が、適応力がありそうで、こちらを採用させていただきました。
すみません、先の解説に間違いがありました。
Nothing 対応のコードは、下記のように書きなおしておいて下さい。

'sBunsho が Nothing の時に、「sArray = New String(0) {""}」相当の結果にする場合 
Dim sArray1() As String = If(sBunsho, "").Split({vbCrLf}, StringSplitOptions.None)
Dim sArray2() As String = (sBunsho & "").Split({vbCrLf}, StringSplitOptions.None)
Dim sArray3() As String = Strings.Split(sBunsho, vbCrLf)


'sBunsho が Nothing の時に、「sArray = New String(-1) {}」相当の結果にする場合 
Dim sArray4() As String = If(sBunsho Is NothingNew String(-1) {}, sBunsho.Split({vbCrLf}, StringSplitOptions.None))
Dim sArray5() As String = If(sBunsho?.Split({vbCrLf}, StringSplitOptions.None), New String(-1) {})


'sBunsho が Nothing の時に、「sArray = Nothing」相当の結果にする場合 
Dim sArray6() As String = If(sBunsho Is NothingNothing, sBunsho.Split({vbCrLf}, StringSplitOptions.None))
Dim sArray7() As String = sBunsho?.Split({vbCrLf}, StringSplitOptions.None)