アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。
760行程度のテキストファイルから
各行の最初の4文字だけを抜き取りたいのですが
vb.netでどのようなコーディングをすればよろしいでしょうか?

以下例です。

明日の天気はおおむね晴れです。
ですが、ところどころによっては
にわか雨になるでしょう。
おでかけのさいには
傘をもたれたほうがよろしいでしょう。
お気をつけて。

(というテキストファイルがあったとして)

明日の天
ですが、
にわか雨
おでかけ
傘をもた
お気をつ


というように保存されるようにしたいのです。

A 回答 (2件)

'やり方は色々ありますが、1つの方法


Imports System
Imports System.IO
Imports System.Text

Class ExampleClass
Shared Sub Main()
'INPUT
Dim inp As StreamReader = new StreamReader("input.txt", _
Encoding.GetEncoding("shift_jis"))
'OUTPUT
Dim Fs As FileStream = New FileStream("LEFT4.txt", _
FileMode.Create, FileAccess.Write, FileShare.None)
Dim out As StreamWriter = _
New StreamWriter(Fs, Encoding.GetEncoding("shift_jis"))

Dim oneLine As String
Dim left4 As String

Do While inp.Peek() >= 0
oneLine = inp.ReadLine()
left4 = oneLine.Substring(0,4)
out.WriteLine(left4)
Loop
inp.Close()
out.Flush()
out.Close()
End Sub
End Class
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
すみません。僕のスキルでは理解できませんでした。
せっかく教えていただいたのにすみません。

お礼日時:2006/01/23 22:35

BLUEPIXYさんのようにはできませんが一例です。



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Fline As String
Const filename1 As String = "C:\memo.txt"
Const filename2 As String = "C:\memo2.txt"

FileOpen("1", filename1, OpenMode.Input)
FileOpen("2", filename2, OpenMode.Output)
Do Until EOF("1")
Fline = LineInput("1")
Print("2", Microsoft.VisualBasic.Left(Fline, 4) & vbCrLf)

Loop
FileClose("2")
FileClose("1")

End Sub
    • good
    • 0
この回答へのお礼

いえいえ、めちゃくちゃわかりやすかったです!
ありがとうございます。

お礼日時:2006/01/23 22:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!