Share via


Cómo: Escribir caracteres en una cadena

En el siguiente ejemplo de código, se escribe un número específico de caracteres de una matriz de caracteres en una cadena existente, que comienza en un punto determinado de la matriz. Para ello, utilice StringWriter, tal y como se muestra a continuación.

Ejemplo

Imports System
Imports System.IO
Imports System.Text

Public Class CharsToStr
    Public Shared Sub Main()
        ' Create an instance of StringBuilder that can then be modified.
        Dim sb As New StringBuilder("Some number of characters")
        ' Define and create an instance of a character array from which
        ' characters will be read into the StringBuilder.
        Dim b() As Char = {" ","t","o"," ","w","r","i","t","e"," ","t","o","."}
        ' Create an instance of StringWriter
        ' and attach it to the StringBuilder.
        Dim sw As New StringWriter(sb)
        ' Write three characters from the array into the StringBuilder.
        sw.Write(b, 0, 3)
        ' Display the output.
        Console.WriteLine(sb)
        ' Close the StringWriter.
        sw.Close()
    End Sub
End Class
Imports System.Text

Module Example
   Public Sub Main()
      Dim sb As New StringBuilder()
      Dim flag As Boolean = True
      Dim spellings() As String = { "recieve", "receeve", "receive" }
      sb.AppendFormat("Which of the following spellings is {0}:", flag)
      sb.AppendLine()
      For ctr As Integer = 0 To spellings.GetUpperBound(0)
         sb.AppendFormat("   {0}. {1}", ctr, spellings(ctr))
         sb.AppendLine()
      Next
      sb.AppendLine()
      Console.WriteLine(sb.ToString())
   End Sub
End Module
' The example displays the following output:
'       Which of the following spellings is True:
'          0. recieve
'          1. receeve
'          2. receive
using System;
using System.IO;
using System.Text;

public class CharsToStr
{
    public static void Main()
    {
        // Create an instance of StringBuilder that can then be modified.
        StringBuilder sb = new StringBuilder("Some number of characters");
        // Define and create an instance of a character array from which
        // characters will be read into the StringBuilder.
        char[] b = {' ','t','o',' ','w','r','i','t','e',' ','t','o','.'};
        // Create an instance of StringWriter
        // and attach it to the StringBuilder.
        StringWriter sw = new StringWriter(sb);
        // Write three characters from the array into the StringBuilder.
        sw.Write(b, 0, 3);
        // Display the output.
        Console.WriteLine(sb);
        // Close the StringWriter.
        sw.Close();
    }
}
using System;
using System.Text;

public class Example
{
   public static void Main()
   {
      StringBuilder sb = new StringBuilder();
      bool flag = true;
      string[] spellings = { "recieve", "receeve", "receive" };
      sb.AppendFormat("Which of the following spellings is {0}:", flag);
      sb.AppendLine();
      for (int ctr = 0; ctr <= spellings.GetUpperBound(0); ctr++) {
         sb.AppendFormat("   {0}. {1}", ctr, spellings[ctr]);
         sb.AppendLine();
      }
      sb.AppendLine();
      Console.WriteLine(sb.ToString());
   }
}
// The example displays the following output:
//       Which of the following spellings is True:
//          0. recieve
//          1. receeve
//          2. receive
using namespace System;
using namespace System::IO;
using namespace System::Text;

public ref class CharsToStr
{
public:
    static void Main()
    {
        // Create an instance of StringBuilder that can then be modified.
        StringBuilder^ sb = gcnew StringBuilder("Some number of characters");
        // Define and create an instance of a character array from which
        // characters will be read into the StringBuilder.
        array<Char>^ b = {' ','t','o',' ','w','r','i','t','e',' ','t','o','.'};
        // Create an instance of StringWriter
        // and attach it to the StringBuilder.
        StringWriter^ sw = gcnew StringWriter(sb);
        // Write three characters from the array into the StringBuilder.
        sw->Write(b, 0, 3);
        // Display the output.
        Console::WriteLine(sb);
        // Close the StringWriter.
        sw->Close();
    }
};

int main()
{
    CharsToStr::Main();
}

Programación eficaz

Este ejemplo muestra el uso de un StringBuilder para modificar una cadena existente. Tenga en cuenta que es necesaria una declaración using adicional, ya que la clase StringBuilder es miembro del espacio de nombres System.Text. Además, en lugar de definir una cadena y convertirla en matriz de caracteres, éste es un ejemplo de cómo crear una matriz de caracteres directamente e inicializarla.

Este código genera el siguiente resultado.

Some number of characters to

Vea también

Tareas

Cómo: Crear una lista de directorios

Cómo: Leer y escribir en un archivo de datos recién creado

Cómo: Abrir y anexar a un archivo de registro

Cómo: Leer texto de un archivo

Cómo: Escribir texto en un archivo

Cómo: Leer caracteres de una cadena

Referencia

StringWriter

StringWriter.Write

StringBuilder

Conceptos

E/S de archivos básica