You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
133 lines
4.1 KiB
C#
133 lines
4.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using System.IO;
|
|
|
|
namespace Übungen_LF6_WinFormanwendung
|
|
{
|
|
public partial class Waehrungsumrechnung : Form
|
|
{
|
|
string fileNameInput;
|
|
string fileNameOutput;
|
|
double rate = 0.0;
|
|
|
|
public Waehrungsumrechnung()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void buttonFileInput_Click(object sender, EventArgs e)
|
|
{
|
|
//Filter für Dateiauswahl setzen
|
|
openFileDialog1.Filter = "CSV-Datei (*.csv)|*.csv|Alle Dateien (*.*)|*.*";
|
|
|
|
//Dateiauswahldialog
|
|
if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
|
|
{
|
|
fileNameInput = openFileDialog1.FileName;
|
|
textBoxFileInput.Text = openFileDialog1.FileName;
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("Keine Datei ausgewählt!", "Fehler");
|
|
return;
|
|
}
|
|
}
|
|
private void buttonFileOutput_Click(object sender, EventArgs e)
|
|
{
|
|
//Filter für Dateiauswahl setzen
|
|
saveFileDialog1.Filter = "CSV-Datei (*.csv)|*.csv|Alle Dateien (*.*)|*.*";
|
|
|
|
//Dateiauswahldialog
|
|
if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
|
|
{
|
|
fileNameOutput = saveFileDialog1.FileName;
|
|
textBoxFileOutput.Text = saveFileDialog1.FileName;
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("Keine Datei ausgewählt!", "Fehler");
|
|
return;
|
|
}
|
|
}
|
|
|
|
private void buttonCalc_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
rate = Convert.ToDouble(textBoxRate.Text);
|
|
}
|
|
catch
|
|
{
|
|
MessageBox.Show("Ungültige Eingabe für Wechselkurs");
|
|
}
|
|
//Wenn button gedrückt muss Eingabe vorhanden sein
|
|
if (rate != 0.0 && textBoxFileInput.Text != "" && textBoxFileOutput.Text != "")
|
|
{
|
|
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("Bitte ein Dateien und Umrechnungskurs wählen!", "Fehler");
|
|
return;
|
|
}
|
|
|
|
|
|
try
|
|
{
|
|
|
|
//Dateileseroutine
|
|
StreamReader sr = new StreamReader(fileNameInput);
|
|
StreamWriter sw = new StreamWriter(fileNameOutput);
|
|
sw.WriteLine(sr.ReadLine());
|
|
|
|
while (!sr.EndOfStream)
|
|
{
|
|
string geleseneZeile = sr.ReadLine();
|
|
string[] zeilenArray = geleseneZeile.Split(';');
|
|
double costUSD;
|
|
double costEUR ;
|
|
|
|
|
|
if (Double.TryParse(zeilenArray[3], out costUSD))
|
|
{
|
|
costEUR = costUSD * rate;
|
|
}
|
|
else
|
|
{
|
|
costEUR = Convert.ToDouble(zeilenArray[3]);
|
|
}
|
|
|
|
zeilenArray[3] = costEUR.ToString();
|
|
try
|
|
{
|
|
sw.WriteLine("{0};{1};{2};{3}", zeilenArray[0], zeilenArray[1], zeilenArray[2], zeilenArray[3]);
|
|
|
|
}
|
|
catch
|
|
{
|
|
MessageBox.Show("Schreiben Fehlgeschlagen!");
|
|
|
|
}
|
|
|
|
}
|
|
// close the stream
|
|
sw.Close();
|
|
sr.Close();
|
|
MessageBox.Show("Konvertierung Erfolgreich");
|
|
}
|
|
catch
|
|
{
|
|
MessageBox.Show("Lesen Fehlgeschlagen!");
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|