Comment lire des caractères dans un fichier 1 par 1 c#
Je veux que mon programme pour lire un fichier texte tous les caractères 1 par 1 et où il trouve inversée par des virgules ( " ), il ajoute un point-virgule avant que inversé par des virgules. Pour exemple, nous avons un paragraphe dans un fichier texte comme suit:
Ceci est un paragraphe qui conains des tas et des tas de personnages et de
les noms et les dates. Mon nom de "Sam" je suis né à "12:00" "midi". Je vis dans
"n'importe où" .
Maintenant, je veux la sortie comme suit :
Ceci est un paragraphe qui conains des tas et des tas de personnages et de
les noms et les dates. Mon nom ;"Sam;" je suis né à ;"12:00;" ;"midi". J'
vivre ;"n'importe où;" .
Il faut ouvrir le fichier à l'aide de flux de lit personnage, puis ajoute un point-virgule là où elle se trouve inversé comman. Et la sortie doit être égale à textbox1.texte.
CODE JUSQU'À CE QUE JE FAIT: -
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace ConsoleApplication1 {
class Program
{
static void Main(string[] args)
{
char ch;
int Tchar = 0;
StreamReader reader;
reader = new StreamReader(@"C:\Users\user1\Documents\data.txt");
do
{
ch = (char)reader.Read();
Console.Write(ch);
if (Convert.ToInt32(ch) == 34)
{
Console.Write(@";");
}
Tchar++;
} while (!reader.EndOfStream);
reader.Close();
reader.Dispose();
Console.WriteLine(" ");
Console.WriteLine(Tchar.ToString() + " characters");
Console.ReadLine();
}
}
}
De SORTIE:-
Ceci est un paragraphe qui conains des tas et des tas de personnages et de
les noms et les dates. Mon nom ";Sam"; je suis né à ";12:00"; ";midi";. J'
vivre ";nulle part"; . 154 caractères
Je veux que le point-virgule avant l'inversion de la virgule. toute aide serait appréciée. Grâce
inversé virgule? tu veux dire des citations (
"
)?n'est pas que grand, il suffit d'utiliser l'exemple que j'ai donné ci-dessus et d'assumer c'est mon fichier de données.
ouais je suis en train de parler devis. J'ai montré l'exemple et de sortie au-dessus de
Dépend si vous parlez anglais ou en anglais. 🙂
OriginalL'auteur Sam | 2013-05-17
Vous devez vous connecter pour publier un commentaire.
Inverser l'ordre des opérations:
par exemple, ne pas écrire le caractère original jusqu'à ce que, APRÈS que vous avez décidé de sortie un point-virgule ou pas.
OriginalL'auteur Marc B
Essayer
ch = (char)reader.Peek();
Cela va lire vous dire le caractère suivant sans le lire. Vous pouvez ensuite utiliser pour vérifier si c'est un " ou pas une insertion : en conséquence
OriginalL'auteur SkeetJon
Ne vous ont de lire caractère par caractère? Le code suivant va faire la même chose comme un bloc, et vous retourner une liste contenant toutes vos lignes.
Juste assez, il semble tout à fait inutilement inefficace est tout.
OriginalL'auteur Andrew