2016-12-16 3 views
0

大きなtxtファイルを1行に保存しています。私はプライバシーのためにショーを表示することはできませんが、全体を通していくつかのティルドを含むでしょう。tildesと同じ数の行があるまで、1行のtxtファイルをループし、各チルダで連続して改行する方法

コードは、実際にはディレクトリ全体を実際に見て、各チルダで改行する方法を示しています。今すぐ、最初のチルダに改行し、次に2行があるように停止します。前述のように、プライバシーに関する懸念があるため、私はファイルパスディレクトリを削除しました。

ありがとうございます。

 public static void LineReturnTilde() //ReplaceAsterik 
    { 
     // where to start your directory walk 

     var directoryToTraverse = @"\\"; 

     // what files to open 

     var fileTypeToOpen = "*.820"; 

     // what to look for 
     var patternToMatch = @"\~"; 

     var regExp = new Regex(patternToMatch); 

     // the new content 

     var patternToReplace = "~\r\n"; 

     // get all the files we want and loop through them to replace 

     foreach (var file in Directory.GetFiles(directoryToTraverse, fileTypeToOpen, SearchOption.AllDirectories)) 
     { 
      // open, replace, overwrite 

       var contents = File.ReadAllText(file); 

       var newContent = regExp.Replace(contents, patternToReplace); 

       File.WriteAllText(file, newContent); 

     } 

    } 
+0

だから問題は何ですか? – Dai

+2

正規表現は本当に必要ありません。単純な 'string.Replace'が行います。 – wdosanjos

+0

サンプルデータなしで問題を分析するのは難しいことではありませんが、難しいことです。 – wdosanjos

答えて

0

結局のところ、それは結局働いたことが判明しました。別のフォーラムで、ネットワークドライブに対する完全な特権を持っていないと、奇妙なエラーが発生する可能性があります。ファイルを私のローカルマシンのディレクトリに置いて、完璧に動作しました。

関連する問題