TextBoxの2行目から最後までの文字列を取得したい
投稿者 YuO  (社会人)
投稿日時
2011/7/2 02:08:57
Linesプロパティから,行ごとの分解された文字列の配列が取得できます。
ここのサイトの,
Visual Basic 中学校 > クラスライブラリ詳解 > System > Windows > Forms > TextBox
http://homepage1.nifty.com/rucio/main/dotnet/ClassLibrary/L006_System.Windows.Forms.TextBox.htm
4.テキストの操作 > 4-3.複数行の制御
が参考になると思います。
MSDN: TextBoxBase.Lines プロパティ (System.Windows.Forms)
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.textboxbase.lines(VS.80).aspx
1行目だけ飛ばすのは,以降ならばSkip拡張メソッドで一発なのですが,
だとList(Of String)に配列を突っ込んで,最初の要素を削除するか,
そもそもループの開始の値を1にすることで0番目の要素を読み飛ばすとか,
そういった方法になると思います。
ここのサイトの,
Visual Basic 中学校 > クラスライブラリ詳解 > System > Windows > Forms > TextBox
http://homepage1.nifty.com/rucio/main/dotnet/ClassLibrary/L006_System.Windows.Forms.TextBox.htm
4.テキストの操作 > 4-3.複数行の制御
が参考になると思います。
MSDN: TextBoxBase.Lines プロパティ (System.Windows.Forms)
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.textboxbase.lines(VS.80).aspx
1行目だけ飛ばすのは,以降ならばSkip拡張メソッドで一発なのですが,
だとList(Of String)に配列を突っ込んで,最初の要素を削除するか,
そもそもループの開始の値を1にすることで0番目の要素を読み飛ばすとか,
そういった方法になると思います。
投稿者 shu  (社会人)
投稿日時
2011/7/2 09:19:14
Textだけ使うなら
Dim Src As String = TextBox1.Text
Dim Idx As Integer = Src.IndexOf(Environment.NewLine)
Dim FirstLine As String
Dim Des As String
If Idx < 0 Then
FirstLine = Src
Des = ""
Else
FirstLine = Src.Substring(0, Idx)
Des = Src.Substring(Idx + Environment.NewLine.Length)
End If
FirstLine に1行目
Desに2行目からの文字列が入ります
Dim Src As String = TextBox1.Text
Dim Idx As Integer = Src.IndexOf(Environment.NewLine)
Dim FirstLine As String
Dim Des As String
If Idx < 0 Then
FirstLine = Src
Des = ""
Else
FirstLine = Src.Substring(0, Idx)
Des = Src.Substring(Idx + Environment.NewLine.Length)
End If
FirstLine に1行目
Desに2行目からの文字列が入ります
投稿者 太一  (社会人)
投稿日時
2011/7/3 02:07:02
YuOさん、有り難うございます。
Linesプロパティ、勉強します。
やはり、VBのバージョンは上がるほど便利になっているのですね。
shuさん、有り難うございます。
バッチリでした。
おかげでやりたい事が出来ました。
Substringというものを初めて知りました。
こんな事も出来るのですね。
有り難うございます。
Linesプロパティ、勉強します。
やはり、VBのバージョンは上がるほど便利になっているのですね。
shuさん、有り難うございます。
バッチリでした。
おかげでやりたい事が出来ました。
Substringというものを初めて知りました。
こんな事も出来るのですね。
有り難うございます。
また、1行目だけの文字列の取得出来たらなと思います。
SelectionStartプロパティを使えば可能でしょうか?
よろしくお願いします。
vb2005/XP