IndentedTextWriter クラスとは? わかりやすく解説

IndentedTextWriter クラス

タブ文字トークン使用して新しい行にインデント設定できるテキスト ライタ提供します

名前空間: System.CodeDom.Compiler
アセンブリ: System (system.dll 内)
構文構文

Public Class IndentedTextWriter
    Inherits TextWriter
Dim instance As IndentedTextWriter
public class IndentedTextWriter : TextWriter
public ref class IndentedTextWriter : public
 TextWriter
public class IndentedTextWriter extends TextWriter
public class IndentedTextWriter extends
 TextWriter
解説解説
使用例使用例

IndentedTextWriter使用して複数異なインデント幅でテキスト入力するコード例次に示します

Imports System
Imports System.CodeDom
Imports System.CodeDom.Compiler
Imports System.ComponentModel
Imports System.IO
Imports System.Windows.Forms

Public Class Form1
   Inherits System.Windows.Forms.Form
   Private textBox1 As System.Windows.Forms.TextBox
 
   
   Private Function CreateMultilevelIndentString()
 As String
        ' Create a TextWriter to use as the base output writer.
        Dim baseTextWriter As New
 System.IO.StringWriter
      
        ' Create an IndentedTextWriter and set the tab string to use
 
        ' as the indentation string for each indentation level.
        Dim indentWriter = New IndentedTextWriter(baseTextWriter,
 "    ")

        ' Set the indentation level.
        indentWriter.Indent = 0

        ' Output test strings at stepped indentations through a recursive
 loop method.
        WriteLevel(indentWriter, 0, 5)
      
        ' Return the resulting string from the base StringWriter.
        Return baseTextWriter.ToString()
    End Function

    Private Sub WriteLevel(ByVal
 indentWriter As IndentedTextWriter, ByVal
 level As Integer, ByVal totalLevels As Integer)
        ' Outputs a test string with a new-line character at the end.
        indentWriter.WriteLine(("This is a test phrase. Current
 indentation level: " + level.ToString()))

        ' If not yet at the highest recursion level, call this output
 method for the next level of indentation.
        If level < totalLevels Then
            ' Increase the indentation count for the next level of indented
 output.
            indentWriter.Indent += 1

            ' Call the WriteLevel method to write test output for the
 next level of indentation.
            WriteLevel(indentWriter, level + 1, totalLevels)

            ' Restores the indentation count for this level after the
 recursive branch method has returned.
            indentWriter.Indent -= 1

        Else
            ' Output a string using the WriteLineNoTabs method.
            indentWriter.WriteLineNoTabs("This is a test phrase
 written with the IndentTextWriter.WriteLineNoTabs method.")
        End If

        ' Outputs a test string with a new-line character at the end.
        indentWriter.WriteLine(("This is a test phrase. Current
 indentation level: " + level.ToString()))
    End Sub

    Private Sub button1_Click(ByVal
 sender As Object, ByVal
 e As System.EventArgs)
        textBox1.Text = CreateMultilevelIndentString()
    End Sub

    Public Sub New()
        Dim button1 As New
 System.Windows.Forms.Button
        Me.textBox1 = New System.Windows.Forms.TextBox
        Me.SuspendLayout()
        Me.textBox1.Anchor = CType(System.Windows.Forms.AnchorStyles.Top
 Or System.Windows.Forms.AnchorStyles.Bottom Or
 System.Windows.Forms.AnchorStyles.Left Or System.Windows.Forms.AnchorStyles.Right, System.Windows.Forms.AnchorStyles)
        Me.textBox1.Location = New System.Drawing.Point(8,
 40)
        Me.textBox1.Multiline = True
        Me.textBox1.Name = "textBox1"
        Me.textBox1.Size = New System.Drawing.Size(391,
 242)
        Me.textBox1.TabIndex = 0
        Me.textBox1.Text = ""
        button1.Location = New System.Drawing.Point(11, 8)
        button1.Name = "button1"
        button1.Size = New System.Drawing.Size(229, 23)
        button1.TabIndex = 1
        button1.Text = "Generate string using IndentedTextWriter"
        AddHandler button1.Click, AddressOf
 Me.button1_Click
        Me.AutoScaleBaseSize = New System.Drawing.Size(5,
 13)
        Me.ClientSize = New System.Drawing.Size(407,
 287)
        Me.Controls.Add(button1)
        Me.Controls.Add(Me.textBox1)
        Me.Name = "Form1"
        Me.Text = "IndentedTextWriter example"
        Me.ResumeLayout(False)
    End Sub

    <STAThread()> _
    Shared Sub Main()
        Application.Run(New Form1)
    End Sub
End Class
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.IO;
using System.Windows.Forms;

namespace IndentedTextWriterExample
{
    public class Form1 : System.Windows.Forms.Form
    {
        private System.Windows.Forms.TextBox textBox1;

        private string CreateMultilevelIndentString()
        {
            // Creates a TextWriter to use as the base output writer.
            System.IO.StringWriter baseTextWriter = new System.IO.StringWriter();
            

            // Create an IndentedTextWriter and set the tab string to
 use 
            // as the indentation string for each indentation level.
            System.CodeDom.Compiler.IndentedTextWriter indentWriter = new
 IndentedTextWriter(baseTextWriter, "    ");           

            // Sets the indentation level.
            indentWriter.Indent = 0;

            // Output test strings at stepped indentations through a
 recursive loop method.
            WriteLevel(indentWriter, 0, 5);

            // Return the resulting string from the base StringWriter.
            return baseTextWriter.ToString();
        }

        private void WriteLevel(IndentedTextWriter
 indentWriter, int level, int totalLevels)
        {
            // Output a test string with a new-line character at the
 end.
            indentWriter.WriteLine("This is a test phrase. Current indentation
 level: "+level.ToString());
            
            // If not yet at the highest recursion level, call this
 output method for the next level of indentation.
            if( level < totalLevels )
            {
                // Increase the indentation count for the next level
 of indented output.
                indentWriter.Indent++;

                // Call the WriteLevel method to write test output for
 the next level of indentation.
                WriteLevel(indentWriter, level+1, totalLevels);

                // Restores the indentation count for this level after
 the recursive branch method has returned.
                indentWriter.Indent--;
            }
            else
                // Outputs a string using the WriteLineNoTabs method.
                indentWriter.WriteLineNoTabs("This is a test phrase written
 with the IndentTextWriter.WriteLineNoTabs method.");

            // Outputs a test string with a new-line character at the
 end.
            indentWriter.WriteLine("This is a test phrase. Current indentation
 level: "+level.ToString());           
        }

        private void button1_Click(object sender,
 System.EventArgs e)
        {
            textBox1.Text = CreateMultilevelIndentString();
        }

        public Form1()
        {
            System.Windows.Forms.Button button1 = new System.Windows.Forms.Button();
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.SuspendLayout();            
            this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top
 | System.Windows.Forms.AnchorStyles.Bottom) 
                | System.Windows.Forms.AnchorStyles.Left) 
                | System.Windows.Forms.AnchorStyles.Right)));
            this.textBox1.Location = new System.Drawing.Point(8,
 40);
            this.textBox1.Multiline = true;
            this.textBox1.Name = "textBox1";
            this.textBox1.Size = new System.Drawing.Size(391,
 242);
            this.textBox1.TabIndex = 0;
            this.textBox1.Text = "";
            button1.Location = new System.Drawing.Point(11, 8);
            button1.Name = "button1";
            button1.Size = new System.Drawing.Size(229, 23);
            button1.TabIndex = 1;
            button1.Text = "Generate string using
 IndentedTextWriter";
            button1.Click += new System.EventHandler(this.button1_Click);
            this.AutoScaleBaseSize = new System.Drawing.Size(5,
 13);
            this.ClientSize = new System.Drawing.Size(407,
 287);
            this.Controls.Add(button1);
            this.Controls.Add(this.textBox1);
            this.Name = "Form1";
            this.Text = "IndentedTextWriter example";
            this.ResumeLayout(false);     
   
        }

        [STAThread]
        static void Main() 
        {
            Application.Run(new Form1());
        }
    }
}
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>
#using <System.dll>

using namespace System;
using namespace System::CodeDom;
using namespace System::CodeDom::Compiler;
using namespace System::ComponentModel;
using namespace System::IO;
using namespace System::Windows::Forms;
public ref class Form1: public
 System::Windows::Forms::Form
{
private:
   System::Windows::Forms::TextBox^ textBox1;

   String^ CreateMultilevelIndentString()
   {
      
      // Creates a TextWriter to use as the base output writer.
      System::IO::StringWriter^ baseTextWriter = gcnew System::IO::StringWriter;
      
      // Create an IndentedTextWriter and set the tab string to use
 
      // as the indentation string for each indentation level.
      System::CodeDom::Compiler::IndentedTextWriter^ indentWriter = gcnew IndentedTextWriter(
 baseTextWriter,"    " );
      
      // Sets the indentation level.
      indentWriter->Indent = 0;
      
      // Output test strings at stepped indentations through a recursive
 loop method.
      WriteLevel( indentWriter, 0, 5 );
      
      // Return the resulting string from the base StringWriter.
      return baseTextWriter->ToString();
   }


   void WriteLevel( IndentedTextWriter^ indentWriter, int
 level, int totalLevels )
   {
      
      // Output a test string with a new-line character at the end.
      indentWriter->WriteLine( "This is a test phrase. Current indentation
 level: {0}", level );
      
      // If not yet at the highest recursion level, call this output
 method for the next level of indentation.
      if ( level < totalLevels )
      {
         
         // Increase the indentation count for the next level of indented
 output.
         indentWriter->Indent++;
         
         // Call the WriteLevel method to write test output for the
 next level of indentation.
         WriteLevel( indentWriter, level + 1, totalLevels );
         
         // Restores the indentation count for this level after the
 recursive branch method has returned.
         indentWriter->Indent--;
      }
      else
      // Outputs a string using the WriteLineNoTabs method.
            indentWriter->WriteLineNoTabs( "This is a test phrase written
 with the IndentTextWriter.WriteLineNoTabs method." );
      // Outputs a test string with a new-line character at the end.
      indentWriter->WriteLine( "This is a test phrase. Current indentation
 level: {0}", level );
   }


   void button1_Click( Object^ /*sender*/, System::EventArgs^
 /*e*/ )
   {
      textBox1->Text = CreateMultilevelIndentString();
   }


public:
   Form1()
   {
      System::Windows::Forms::Button^ button1 = gcnew System::Windows::Forms::Button;
      this->textBox1 = gcnew System::Windows::Forms::TextBox;
      this->SuspendLayout();
      this->textBox1->Anchor = (System::Windows::Forms::AnchorStyles)(System::Windows::Forms::AnchorStyles::Top
 | System::Windows::Forms::AnchorStyles::Bottom | System::Windows::Forms::AnchorStyles::Left
 | System::Windows::Forms::AnchorStyles::Right);
      this->textBox1->Location = System::Drawing::Point(
 8, 40 );
      this->textBox1->Multiline = true;
      this->textBox1->Name = "textBox1";
      this->textBox1->Size = System::Drawing::Size( 391,
 242 );
      this->textBox1->TabIndex = 0;
      this->textBox1->Text = "";
      button1->Location = System::Drawing::Point( 11, 8 );
      button1->Name = "button1";
      button1->Size = System::Drawing::Size( 229, 23 );
      button1->TabIndex = 1;
      button1->Text = "Generate string using
 IndentedTextWriter";
      button1->Click += gcnew System::EventHandler( this, &Form1::button1_Click
 );
      this->AutoScaleBaseSize = System::Drawing::Size( 5, 13
 );
      this->ClientSize = System::Drawing::Size( 407, 287 );
      this->Controls->Add( button1 );
      this->Controls->Add( this->textBox1
 );
      this->Name = "Form1";
      this->Text = "IndentedTextWriter example";
      this->ResumeLayout( false );
   }

};


[STAThread]
int main()
{
   Application::Run( gcnew Form1 );
}

package IndentedTextWriterExample; 

import System.*;
import System.CodeDom.*;
import System.CodeDom.Compiler.*;
import System.ComponentModel.*;
import System.IO.*;
import System.Windows.Forms.*;

public class Form1 extends System.Windows.Forms.Form
{
    private System.Windows.Forms.TextBox textBox1;

    private String CreateMultilevelIndentString()
    {
        // Creates a TextWriter to use as the base output writer.
        System.IO.StringWriter baseTextWriter = new System.IO.StringWriter();

        // Create an IndentedTextWriter and set the tab string to use
 
        // as the indentation string for each indentation level.
        System.CodeDom.Compiler.IndentedTextWriter indentWriter 
            = new IndentedTextWriter(baseTextWriter, "  
  ");

        // Sets the indentation level.
        indentWriter.set_Indent(0);

        // Output test strings at stepped indentations through a 
        //recursive loop method.
        WriteLevel(indentWriter, 0, 5);

        // Return the resulting string from the base StringWriter.
        return baseTextWriter.ToString();
    } //CreateMultilevelIndentString

    private void WriteLevel(IndentedTextWriter
 indentWriter, int level,
        int totalLevels)
    {
        // Output a test string with a new-line character at the end.
        indentWriter.WriteLine("This is a test phrase."
            +" Current indentation level: " 
            + System.Convert.ToString(level));

        // If not yet at the highest recursion level, call this output
 method
        // for the next level of indentation.
        if (level < totalLevels) {
            // Increase the indentation count for the next level of
            // indented output.
            indentWriter.set_Indent(indentWriter.get_Indent() + 1);

            // Call the WriteLevel method to write test output for the
            // next level of indentation.
            WriteLevel(indentWriter, level + 1, totalLevels);

            // Restores the indentation count for this level after the
            // recursive branch method has returned.
            indentWriter.set_Indent(indentWriter.get_Indent() - 1);
        }
        // Outputs a string using the WriteLineNoTabs method.
        else {
            indentWriter.WriteLineNoTabs("This is a test phrase written with"
                +" the IndentTextWriter.WriteLineNoTabs method.");
        } 
        // Outputs a test string with a new-line character at the end.
        indentWriter.WriteLine("This is a test phrase."
            +" Current indentation level: " 
            + System.Convert.ToString(level));
    } //WriteLevel

    private void button1_Click(Object sender,
 System.EventArgs e)
    {
        textBox1.set_Text(CreateMultilevelIndentString());
    } //button1_Click

    public Form1()
    {
        System.Windows.Forms.Button button1 = new System.Windows.Forms.Button();
        this.textBox1 = new System.Windows.Forms.TextBox();
        this.SuspendLayout();
        this.textBox1.set_Anchor(((System.Windows.Forms.AnchorStyles)(
            System.Windows.Forms.AnchorStyles.Top 
            | System.Windows.Forms.AnchorStyles.Bottom 
            | System.Windows.Forms.AnchorStyles.Left 
            | System.Windows.Forms.AnchorStyles.Right)));
        this.textBox1.set_Location(new System.Drawing.Point(8,
 40));
        this.textBox1.set_Multiline(true);
        this.textBox1.set_Name("textBox1");
        this.textBox1.set_Size(new System.Drawing.Size(391,
 242));
        this.textBox1.set_TabIndex(0);
        this.textBox1.set_Text("");
        button1.set_Location(new System.Drawing.Point(11, 8));
        button1.set_Name("button1");
        button1.set_Size(new System.Drawing.Size(229, 23));
        button1.set_TabIndex(1);
        button1.set_Text("Generate string using
 IndentedTextWriter");
        button1.add_Click(new System.EventHandler(this.button1_Click));
        this.set_AutoScaleBaseSize(new System.Drawing.Size(5,
 13));
        this.set_ClientSize(new System.Drawing.Size(407,
 287));
        this.get_Controls().Add(button1);
        this.get_Controls().Add(this.textBox1);
        this.set_Name("Form1");
        this.set_Text("IndentedTextWriter example");
        this.ResumeLayout(false);
    } //Form1

    /** @attribute STAThread()
     */
    public static void main(String[]
 args)
    {
        Application.Run(new Form1());
    } //main
} //Form1
.NET Framework のセキュリティ.NET Frameworkセキュリティ
継承階層継承階層
System.Object
   System.MarshalByRefObject
     System.IO.TextWriter
      System.CodeDom.Compiler.IndentedTextWriter
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
IndentedTextWriter メンバ
System.CodeDom.Compiler 名前空間



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「IndentedTextWriter クラス」の関連用語

IndentedTextWriter クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



IndentedTextWriter クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS