vb.net コードを自動的にフォーマットするためのツールはありますか? 特に事前定義された行の長さで改行を追加するためのツールはありますか? 私は長い行 (数千行) を含む多くのコードを扱っており、手動で再フォーマットするにはかなりの時間がかかります。コードを領域などに再配置するためのツールをいくつか見てきましたが、改行で再フォーマットするツールは見つかりませんでした。無料は素晴らしいでしょう。
3 に答える
VS で行を自動ラップしてみてください。オプションはツール | にあります。オプション | 基本 | 設定 | ワードラップ。
もう 1 つ行うことは、[編集] | [編集] に移動することです。高度な | [ドキュメントのフォーマット] メニュー オプション。整形式でないドキュメントの空気をきれいにするのに役立ちます。
3 番目のオプションは、DevExpress の Code Rush Xpress アドオンをインストールすることです。これは、コード ブロックの開始時と終了時に非常に便利な垂直線を追加し、コードのリファクタリングにも役立ちます。ここから入手できます: http://devexpress.com/Products/Visual_Studio_Add-in/CodeRushX/。無料ですが、Visual Studio の Express エディションはサポートされていません。
私はこれがずっと前に投稿されたことを知っています。しかし、誰かが同じ問題を抱えていたら、私が作ったこのサブを試してみてください. サブには 2 つの出力があります (Textbox1 = 改行のあるコード、Textbox3 = 1 行のコード)。
2 つのテキスト ボックス (名前は Textbox1 と Textbox3) とボタン (Button1) を作成します。
サブを作成し (好きな名前を付けてください)、次のコードを入力してください:
Try
Dim x As String = TextBox1.Text
x = x.Replace("& """, "")
x = x.Replace(""" _", "")
x = x.Replace("""", "")
x = x.Replace(vbNewLine, "")
x = x.Replace(vbTab, "")
While x.Contains(" ") '2 spaces.
x = x.Replace(" ", " ") 'Replace with 1 space.
End While
TextBox3.Text = x
Dim l As Integer = Len(x)
Dim xlim As Integer = InputBox("Specify the maximum number of characters for each line:", "Line Max", 66)
Dim ylim As Double = 0
TextBox1.Text = ""
ylim = l / xlim
If Int(ylim) <> ylim Then
ylim = Int(ylim) + 1
Else
ylim = Int(ylim)
End If
Dim una As String = "", huli As String = ""
Dim mynewstring As String = ""
Dim startin As Integer = 1
For i = 1 To ylim
If i = 1 Then
una = """"
Else
una = vbTab & "& """
End If
If i = ylim Then
huli = """"
Else
huli = """ _"
End If
mynewstring = mynewstring & una & Strings.Mid(x, startin, xlim) & huli & vbNewLine
startin += xlim
Next
TextBox1.Text = mynewstring
Catch ex As Exception
MsgBox(ex.Message)
End Try
PS元の入力を復元するためのコードを追加しませんでした。
Visual Studio 2008 を使用して、C#、VB コードのフォーマットに Ctrl + A + K + F を使用する必要があります