このtxtファイルがあるとしましょう:
a
b
c
d
e
f
g
h
ch
追加したい各行に,3
、行数に文字一致を追加したい。1 行目に追加,k
して 2 行,r
目に追加し、3 行目に追加,p
して、これを最後まで繰り返します。
したがって、結果は次のようになります。
a,k,3
b,r,3
c,p,3
d,k,3
e,r,3
f,p,3
g,k,3
h,p,3
ch,r,3
私は行を繰り返すためにこれを持っています:
open System.IO
[<EntryPoint>]
let main argv =
File.ReadLines(argv.[0]) |> Seq.iter (printfn "%s")
0
それでも機能しません(行を印刷していません)。私はこれを実行しcmd.exe
ていfsi script.fsx namefile.txt
ます。
私は F# の初心者ですが、学習を開始したいと考えています。ちょうど今、このスクリプトが必要です。だから誰かが私に正しい解決策を投稿できるなら、ありがとう。
編集: ジョン・パーマーのおかげで、私は今これを持っています:
open System.IO
[<EntryPoint>]
let main argv =
File.ReadLines(argv.[1]) |> Seq.iteri (fun i x -> match i % 3 with
| 0 -> printfn "%s,k,3" x
| 1 -> printfn "%s,r,3" x
| 2 -> printfn "%s,p,3" x
| _ -> printfn "%s" x)
0
良さそうに見えますが、コマンド ウィンドウで何も印刷されず、元のファイルには何も起こりません。そのため、変更をファイルに書き込むのにほとんど役に立ちません (新しいファイルか古いファイルかは関係ありません)。