Hallo,
ich würde gerne aus einer Excel Tabelle nun auch Fotos in Java einlesen und daraus eine vcf-Datei erstellen
Bis jetzt klappt der folgende Code nur für Informationen über die jeweilige Person, jetzt würde ich gerne noch Fotos dazu haben. Das ist mein bisheriger Code. Ich bin Java-Anfänger und komme einfach nicht weiter…
Starting Klasse:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import org.youza.dto.vCard;
public class Starting {
/**
* @param args
*/
public static void main(String[] args) {
readFile("test.csv");
System.out.println("finished!"); // Konsolenausgabe das der Vorgang fertiggestellt wurde
}
public static void readFile(String path){
File file = null;
FileReader freader = null;
LineNumberReader lnreader = null;
try{
file = new File(path);
freader = new FileReader(file);
lnreader = new LineNumberReader(freader);
String line = "";
while ((line = lnreader.readLine()) != null){
if(lnreader.getLineNumber()!=1)
{
vCard vcard = new vCard();
String [] temp = line.split(";");
if(temp.length>=6)
{
vcard.setVorname(temp[0]);
vcard.setNachname(temp[1]);
vcard.setE_mail(temp[2]);
vcard.setOrganisation(temp[3]);
vcard.setTelefon(temp[4]);
vcard.setAddresse(temp[5]);
if(vcard.writing(vcard.getVorname() + "_" + vcard.getNachname() + ".vcf") == false) /** Fehlerbehandlung */
{
freader.close();
lnreader.close();
return;
}
}
}
}
freader.close();
lnreader.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//Konsoleneingabe bzw. Abfrage
public static void fillinvCard(vCard vcard){
int count = 0;
do{
try {
BufferedReader console = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Vorname : ");
vcard.setVorname(console.readLine());
System.out.print("Nachname : ");
vcard.setNachname(console.readLine());
System.out.print("E-mail : ");
vcard.setE_mail(console.readLine());
System.out.print("Adresse : ");
vcard.setAddresse(console.readLine());
System.out.print("Organisation : ");
vcard.setOrganisation(console.readLine());
System.out.print("Telefon : ");
vcard.setTelefon(console.readLine());
count = 3;
} catch (Exception ex) {
System.out.println("Fehlereingabe");
count++;
if(count == 3)
{
}
}
}while (count < 3);
}
}```
Vcard :
```package org.youza.dto;
//Importieren der Werte
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
//Hier werden die Eigenschaften der anderen Klasse abgefragt
public class vCard {
private String Vorname;
private String Nachname;
private String Organisation;
private String URL;
private String E_mail;
private String Telefon;
private String Addresse;
public String getVorname() {
return Vorname;
}
public void setVorname(String vorname) {
Vorname = vorname;
}
public String getNachname() {
return Nachname;
}
public void setNachname(String nachname) {
Nachname = nachname;
}
public String getOrganisation() {
return Organisation;
}
public void setOrganisation(String organisation) {
Organisation = organisation;
}
public String getURL() {
return URL;
}
public void setURL(String uRL) {
URL = uRL;
}
public String getE_mail() {
return E_mail;
}
public void setE_mail(String e_mail) {
E_mail = e_mail;
}
public String getTelefon() {
return Telefon;
}
public void setTelefon(String telefon) {
Telefon = telefon;
}
public String getAddresse() {
return Addresse;
}
public void setAddresse(String addresse) {
Addresse = addresse;
}
public boolean writing(String zielDatei) { // Schreibt die Werte in die Zieldatei
File file = new File(zielDatei);
FileWriter writer;
try {
writer = new FileWriter(file, true);
writer.write("BEGIN:VCARD");
writer.write(System.getProperty("line.separator"));
writer.write("VERSION:3.0");
writer.write(System.getProperty("line.separator"));
writer.write("N:"+this.getNachname()+";"+this.getVorname());
writer.write(System.getProperty("line.separator"));
writer.write("FN:"+this.getVorname()+" "+this.getNachname());
writer.write(System.getProperty("line.separator"));
writer.write("ORG:"+this.getOrganisation());
writer.write(System.getProperty("line.separator"));
writer.write("URL:"+this.getURL());
writer.write(System.getProperty("line.separator"));
writer.write("EMAIL;TYPE=INTERNET:"+this.getE_mail());
writer.write(System.getProperty("line.separator"));
writer.write("TEL;TYPE=voice,work,pref:"+this.getTelefon()+":");
writer.write(System.getProperty("line.separator"));
writer.write("ADR;TYPE=intl,work,postal,parcel:;;"+this.getAddresse()+":");
writer.write(System.getProperty("line.separator"));
writer.write("END:VCARD");
writer.close();
return true;
} catch (IOException e) {
e.printStackTrace();
return false;
}
}
}```
Vielen Dank im Voraus.:)