Remplacement automatisé de chaînes de caractères

Description

Bonjour,
aujourd'hui, je vais vous présenter un programme bien spécial.
Il s'agit en effet d'un programme à la base très simple mais contenu dans une belle interface graphique
c'est un peu comme la carosserie d'une Ferra avec un moteur Hyundai :)

Nan, sérieusement, ce programme peut-être utile...C'est un peu comme la fonction Replace de Word sauf qu'ici c'est automatisé
on peut même charger et enregistrer les listes de conversion.

L'interface graphique est une petite fantaisie personnelle...Elle est simple et efficace

Source / Exemple :


using System;
using System.Text;
using System.IO;
using System.Windows.Forms;

namespace ReplaceALL
{
public class ReplaceString
{
private string filePath, newFilePath;
private string[,] keyList;
private string data;
private ProgressBar progressBar;
private Label msgLabel;
//le constructeur reçoit l'adresse du fichier à modifier
//ainsi qu'un tabeleaux de conversion
public ReplaceString(string filePath, string newFilePath, string[,] keyList, ProgressBar progressBar, Label msgLabel)
{
	this.filePath = filePath;
	this.newFilePath = newFilePath;
	this.keyList = keyList;
	this.progressBar = progressBar;
	this.msgLabel = msgLabel;
}
//la fonction principale
public bool Replace()
{
	if(filePath == null || filePath == "") return false;
	if(keyList == null) return false;
		msgLabel.Text = "la lecture du fichier a commencé";
	data = ReadFile(filePath);	
		msgLabel.Text = "la lecture du fichier est terminé";
		progressBar.Maximum = keyList.Length/2;
		progressBar.Value = 0;
		msgLabel.Text = "la conversion du fichier a commencé";
	for(int i=0; i<keyList.Length/2; i++)
	{
		msgLabel.Text = "Remplacement de la clé " + i.ToString();
        data = data.Replace(keyList[i,0], keyList[i,1]);
		progressBar.Value++;
		Application.DoEvents();
	}
		msgLabel.Text = "Conversion terminé, début de la création du fichier destination";
	WriteFile(newFilePath);
		msgLabel.Text = "Conversion réussi";
	return true;
}

#region ReadFile
private string ReadFile(string filePath)
{
	StreamReader read = new StreamReader(File.OpenRead(filePath));
	string data = read.ReadToEnd();
	read.Close();
	return data;
}
#endregion
private void WriteFile(string filePath)
{
	StreamWriter write = new StreamWriter(filePath, false);
	write.Write(data);
	write.Flush();
	write.Close();
}
}
}

Conclusion :


En passant, utilisez la fonction Contactez-Moi pour vos commentaires, ca me fera vraiment plaisir ;)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.