JExcel: File einlesen und Werte anhängen

Status
Nicht offen für weitere Antworten.

magic_halli

Bekanntes Mitglied
Hi,

ich möchte mit JExcel eine vorhandene Exceldatei einlesen, die Anzahl der Zeilen ermitteln und dann eine neue Zeile ans Ende anhängen.
Hier ist die "Vorarbeit" mit dem Einlesen und der Zeilenermittlung, nur weiß ich nicht recht, wie ich direkt im Anschluß auf die bereits eingelesen Datei schreibend zugreifen soll/kann:
Code:
      File file = new File(path + "test.xls");
      if( file.exists()){
         // vorhandene test.xls einlesen
         Workbook workbookRead = Workbook.getWorkbook(file);
         // Sheet wählen
         Sheet sheetRead = workbookRead.getSheet(0);
         // Anzahl der Zeilen des aktuellen Sheet ermitteln
         int iRows = sheetRead.getRows();

         // hier jetzt in die Zeile 'iRows+1' neue Daten schreiben - WIE?

       
         //Workbook wieder schließen
         workbookRead.close();
      }
Wie muss das neu-einfügen von Werten an der von mir gedachten Stelle syntaktisch aussehen?
Ich kenne zwar die Syntax, um ein neues WritableWorkbook/WritableSheet zu erstellen und zu füllen, aber nicht die Syntax, um auf ein vorhandenes/eingelesenes Workbook/Sheet (wie bei mir hier) schreibend einzuwirken.

Danke und Gruß
 
M

Mr.

Gast
Hi...

also ich bin auch nicht so versiert und eigentlich blutiger Anfänger aber ich habe das so gemacht:

Code:
Label label = new Label(spalte, zeile, inhalt);
sheet.addCell(label);

Gruß

Mr.
 

tobi88

Aktives Mitglied
Ich bin gerade selber dran daten zu exportieren. Der Code wird dir bestimmt weiter helfen ;)

Code:
import java.io.File;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;

public class DemoJExcel {
	
	private static Workbook workbook;
	private static WritableWorkbook copy;
	
	private static WritableSheet sheet;
	
	private static Label label;

	
	
	public static void exportExcel( String inputExcelDokumentname, String exportExcelDokumentname )
	{
				
		try {
			workbook = Workbook.getWorkbook(new File(inputExcelDokumentname));
			copy = Workbook.createWorkbook( new File(exportExcelDokumentname), workbook);
			sheet = copy.getSheet(0);
			
			int rowCount = sheet.getRows();
			
			//neue Zeile unten anhängen
			createLabelCell( 0, rowCount, "Neuer Wert!");
			
			
			copy.write();
			copy.close();
			
		} catch (Exception e) {
			e.printStackTrace();
		}

	}
	
	public static void createLabelCell( int col, int row, String value ) throws RowsExceededException, WriteException {
	
		label = new Label(col, row, value);
		sheet.addCell(label); 
		
	}
	
	public static void main(String[] args) {
		exportExcel( "ProtokollVorlage.xls", "ProtokollVorlage.xls" ); //Datei wird überschrieben
		}

}


mfg
Tobi

ps: weiß jemand wie man eine leere zelle mit formatierten rahmen erstellen kann?

EDIT:

Mein bisheriger Code der nicht so geht, wie ich gerne möchte :(
Code:
	public static void addCellNull( int col, int row ) throws RowsExceededException, WriteException
	{			
		EmptyCell empty = new EmptyCell( col, row);
		empty.setBorder( Border.ALL, BorderLineStyle.DOTTED );
		sheet.addCell( empty );
	}
 

magic_halli

Bekanntes Mitglied
Hi tobi... ja, ich hab bei Dir die eine Codezeile gefunden, die ich eigentlich gesucht habe. :wink:
Code:
copy = Workbook.createWorkbook( new File(exportExcelDokumentname), workbook);
Somit kann ich schreibend auf das eingelesene Workbook zugreifen - prima.
Der Rest ist dann bei mir ähnlich...
Code:
File file = new File(path + "test.xls");
int currentColumn = 0;

   if( file.exists()){
      // vorhandene test.xls einlesen
      Workbook workbookRead = Workbook.getWorkbook(file);
      // Sheet wählen
      Sheet sheetRead = workbookRead.getSheet(0);
      // Anzahl der Zeilen des aktuellen Sheet ermitteln
      int iRows = sheetRead.getRows();

      // hier jetzt in die Zeile 'iRows' neue Daten schreiben
      WritableWorkbook workbook = Workbook.createWorkbook(file, workbookRead);
      WritableSheet sheet = workbook.getSheet(0);
      // Werte hinten anhängen
      sheet.addCell(new Label(currentColumn++, iRows, "testZelle1"));

      workbook.write();
      workbook.close();
   }
So, mein Testeintrag wird erstmal soweit sogut eingefügt...
Komisch ist nur, dass es mir beim Einfügen meines Testeintrages plötzlich allen bisherigen Text im xls-File als so komische kleine Vierecke darstellt und bei erneutem ausführen ist der Text plötzlich wieder leserlich!!! Außerdem fügt es mir über jeden Testeintrag eine extra Zeile mit auch diesen seltsamen Vierecken ein! ???:L
Hier mal ein Darstellungsbsp.:
Code:
琀攀猀琀娀攀氀氀攀㄀
testZelle1
Mh, hat jemand ne Idee, warum sich das so verhalten könnte?

Gruß
 

tobi88

Aktives Mitglied
Bei mir geht dein Code wunderbar. Ich weiß nicht warum du so Zeichen bekommst.... vielleicht liegt es an deinem exceldokument. erstell dir mal ein neues und fusch dadrinne rum.







Code:
Blank blank = new Blank(col, row);
sheet.addCell ( blank );

Kann ich schon mal ein leeres Feld einfügen :) weiß nur noch nicht wie man formatiert :(
 

tobi88

Aktives Mitglied
Code:
		WritableFont arial10font = new WritableFont(WritableFont.ARIAL, 10, WritableFont.BOLD); 
		WritableCellFormat arial10format = new WritableCellFormat (arial10font);
		arial10format.setBorder( Border.ALL, BorderLineStyle.THIN );		
		
		
		Blank blank = new  Blank(col, row, arial10format);
		sheet.addCell( blank );

Hiermit kann man eine leere Zelle erstellen, die wie folgt formatiert ist:

-Schriftart Arial
-Schriftgröße 10
-Fett
-Zelle ist komplett mit einer schwarzen dünnen linie umrandet.


:)

Man schauen. vielleicht erstelle ich mal ein kleinen JExcel Tutorial. Besteht denn darin Interesse???

Gruß
Tobi
 

terrly

Mitglied
hallo tobi88,

vielen Dank für die nützliche Infos. Für jeden möglichen Java Tutorials habe ich Interesse.

Danke...
 

tobi88

Aktives Mitglied
:) freut mich, dass einer interesse zeigt.

dann werde ich mal am wochenende hinsetzen und was zusammen basteln. hoffe ich finde zeit dafür.
 
G

Gast

Gast
Vielen Dank werde auch am Wochenende hinsetzen und einarbeiten. Ich warte ganz gespannt deine Tutorials.

vielen Dank im Voraus.
 
G

Guest

Gast
moin,

ich habe leider am wochenende keine zeit gefunden. habe aber schon an der arbeit angefangen was zu schreiben. werde es dienstag abend reinstellen.

gruß
tobi
 
G

Guest

Gast
Hallo,

ich hab die Erfahrung gemacht, dass wenn ich mehr als die 255 Zeichen in eine Zelle Packe Excel damit nicht zurecht kommt und dann unter anderem auch solche Zeichen dabei rauskommen... Also schön auf die Zeichanzahl achten oder OO verwenden ;) Dort hatte ich das Problem nicht...

Gruß
 
G

Gast

Gast
Hallo,

ich habe ein Problem, vielleicht könnte mir jemand helfen.

Ich habe eine Excel Tabelle, die mir eine Funktion berechnet. Die erste Spalte enthält Input-Daten, die ich ändern kann und die zweite Spalte die Output-Daten, die ich ablesen sollte. Die zweite Spalte enthält eine Formel, die meine Funktion automatisch berechnet. Wenn ich die Daten in die erste Spalte schreibe (funktioniert einwandfrei) und danach das Ergebnis aus der zweiten Spalte auslese, erhalte ich nicht die aktuelle Daten, sondern die vorherigen. Wenn ich aber die Datei mit Excel aufmache, sehe ich die richtigen Ergebnisse. Bei der Schließung der Datei werde ich gefragt, ob ich die speichern möchte. Wenn ich "JA" sage und danach wieder die Lese-Methode aufrufe, nur dann kriege ich die richtigen Ergebnisse. Der Hacken ist wahrscheinlich bei der Zellen mit der Formeln, sie werden nicht mit der write()-Methode gespeichert. Weißt jemand vieleicht, wie man das lösen kann. Im Voraus vielen Dank!!!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
I Bild richtig speichern / Hochkant im File Explorer, nach Upload vertikal Java Basics - Anfänger-Themen 9
R File.pathSeparator und File.separator Java Basics - Anfänger-Themen 46
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
izoards Prunsrv - Windows Service - .bat file starten Java Basics - Anfänger-Themen 84
I File Uploader... Statusanzeige, Berechnung des Status etc. Java Basics - Anfänger-Themen 0
I H2 Datenbank starten / Daten in File speichern Java Basics - Anfänger-Themen 25
G jar file lässt sich nicht öffnen Java Basics - Anfänger-Themen 1
N Textdatei aus Resourcen-Ordner eines Projekts/ jar-file lesen Java Basics - Anfänger-Themen 4
J File length als Prüfwert für Download Java Basics - Anfänger-Themen 5
berserkerdq2 Überprüfen ob eine Schreibberechtigung auf ein file exisitert bzw. ob man dieses file löschen kann, wie? Java Basics - Anfänger-Themen 9
berserkerdq2 IOstreams, was unterscheidet file von z. B. BufferedWriter? Java Basics - Anfänger-Themen 11
J Datentypen String in File konvertieren funktioniert nicht Java Basics - Anfänger-Themen 4
A java jar-File Java Basics - Anfänger-Themen 1
E Executable jar file fehler Java Basics - Anfänger-Themen 9
I Upload File zu einem Webservice Java Basics - Anfänger-Themen 17
I ZIP File erstellen Java Basics - Anfänger-Themen 10
LeoDerKek Textdatei in JAR-File Java Basics - Anfänger-Themen 4
Tom/S File Java Basics - Anfänger-Themen 10
AleXusher Mehrdimensionales Array aus txt.file auslesen Java Basics - Anfänger-Themen 4
A Checkstyle - File contains tab characters Java Basics - Anfänger-Themen 2
H Java file nicht gefunden Java Basics - Anfänger-Themen 5
C File speichern Java Basics - Anfänger-Themen 5
C Runnable Jar-File erzeugen Java Basics - Anfänger-Themen 14
C Pfad zu Properties-File bei ResourceBundle Java Basics - Anfänger-Themen 7
F GSON file mit einer List erstellen Java Basics - Anfänger-Themen 2
rafi072001 Lesen aus einem Excel File Java Basics - Anfänger-Themen 10
C Bild in executable JAR File mitgeben Java Basics - Anfänger-Themen 5
K File (png) in Image laden Java Basics - Anfänger-Themen 3
B Inputstream in file schreiben? Java Basics - Anfänger-Themen 23
S Input/Output Reader/Writer finden file nicht Java Basics - Anfänger-Themen 3
T Buffered Stream leert Txt File Java Basics - Anfänger-Themen 3
A 2d Arrays aus txt.file einlesen Java Basics - Anfänger-Themen 16
Dimax In Java File (nicht in Java Projekt) mysql Driver importieren Java Basics - Anfänger-Themen 3
K File wird in der .Jar nicht gefunden Java Basics - Anfänger-Themen 3
E TXT FILE EINLESEN Java Basics - Anfänger-Themen 4
Trèfle EXCEL-File Laufwerkunabhängig einbinden. Java Basics - Anfänger-Themen 1
B HTML File einlesen inkl. Bilder? Java Basics - Anfänger-Themen 2
B Hilfe bei InputStream To File Java Basics - Anfänger-Themen 22
topi relativer Pfad in einem Runnable JAR file Java Basics - Anfänger-Themen 12
A jar File kleiner bekommen Java Basics - Anfänger-Themen 3
B File öffnen in src/main/webapp Java Basics - Anfänger-Themen 4
K File-Name Vergleich Java Basics - Anfänger-Themen 2
krgewb Runnable JAR File Export Java Basics - Anfänger-Themen 11
S Maxium aus einer File finden Java Basics - Anfänger-Themen 12
dapzoo Class File Version zu niedrig? Ausführen über Eingabeaufforderung nicht möglich Java Basics - Anfänger-Themen 14
D Input/Output File exists canRead canWrite Java Basics - Anfänger-Themen 11
B cal4j - Error at line 1:Unexpected end of file Java Basics - Anfänger-Themen 0
P jar file lässt sich nicht ausführen Java Basics - Anfänger-Themen 4
E Best Practice Jar-file mit zwei Klassen und externer Bibliothek über Konsole erzeugen Java Basics - Anfänger-Themen 13
M Erste Schritte CSV-File einlesen und Daten verarbeiten Java Basics - Anfänger-Themen 5
F File von Windowsfreigabe laden Java Basics - Anfänger-Themen 1
S java.nio.file.FileSystemException bei Dateizugriff vermeiden Java Basics - Anfänger-Themen 7
Vince42 NIO File Tree in XML umwandeln Java Basics - Anfänger-Themen 10
J Zweidimensionales Array in CSV File exportieren Java Basics - Anfänger-Themen 3
E War-File Problem mit Eclipse Java Basics - Anfänger-Themen 3
B Excel File einlesen und Überschrift prüfen Java Basics - Anfänger-Themen 8
M Email versenden Outlook, attached File, ohne Anmeldung Java Basics - Anfänger-Themen 4
M Input/Output Word File Kopieren Java Basics - Anfänger-Themen 12
K Runable Jar File erstellen Java Basics - Anfänger-Themen 17
T Java Executable jar file funktioniert nicht Java Basics - Anfänger-Themen 4
sourcecorn Werte aus einem File lesen Java Basics - Anfänger-Themen 6
Kopak'rraf Korruptes zip File. Java Basics - Anfänger-Themen 0
T File für Einstellungen wird nicht geladen Java Basics - Anfänger-Themen 1
S Sounddatei in Jar File integrieren Java Basics - Anfänger-Themen 2
S Index File bauen Java Basics - Anfänger-Themen 5
T Anzeige, wie lange es noch dauert bis ein File gesendet ist. Java Basics - Anfänger-Themen 2
T filereader , file aus programm einlesen Java Basics - Anfänger-Themen 12
Ghostman1711 Itext PDF print File gelockt by Java Java Basics - Anfänger-Themen 15
N Email mit Anhang - File not Found Java Basics - Anfänger-Themen 1
K Interface Kein Bild im .jar-File Java Basics - Anfänger-Themen 15
S Bild in Jar-File mit ImageIO Java Basics - Anfänger-Themen 50
Syncopated Pandemonium Compiler-Fehler The constructor MP3File(File) refers to the missing type NoMPEGFramesException Java Basics - Anfänger-Themen 7
S File mit canRead() testen Java Basics - Anfänger-Themen 4
A file.delete funktioniert nicht Java Basics - Anfänger-Themen 15
K Classpath Lesen von Property-File Java Basics - Anfänger-Themen 1
S jar file Java Basics - Anfänger-Themen 19
B Fragen zu ZIP-File Java Basics - Anfänger-Themen 9
B Dateityp von File bekommen Java Basics - Anfänger-Themen 2
I Automatisch Verzeichnis erstellen bei File erstellen Java Basics - Anfänger-Themen 5
E Große Datenmengen effizient in CSV File speichern Java Basics - Anfänger-Themen 4
I String zu File umwandeln Java Basics - Anfänger-Themen 2
N File virtuell ByteStream Java Basics - Anfänger-Themen 11
X Übergabeparameter Konstruktor (File) Java Basics - Anfänger-Themen 13
Anfänger2011 file.isDirectory() liefert falschen Wert!? Java Basics - Anfänger-Themen 1
ms_cikar Jar file mit resource erzuegen Java Basics - Anfänger-Themen 28
E lesen csv file column by column Java Basics - Anfänger-Themen 10
U Anhand von Ant ein War-File erstellen Java Basics - Anfänger-Themen 0
B Quellcode einelsen "line by line" (und abspeichern in file (txt) Java Basics - Anfänger-Themen 7
O Zip-File Inhalt einlesen Java Basics - Anfänger-Themen 3
V Erste Schritte Dateinamen aus einer FIle[] in eine List Java Basics - Anfänger-Themen 11
P Jar File Java Basics - Anfänger-Themen 3
B Probleme bei "Daten in CSV File schreiben". Java Basics - Anfänger-Themen 9
S CSV File - "Vergleichen und Sortieren" Java Basics - Anfänger-Themen 3
T Wieso kann ich das jar file nicht starten? Java Basics - Anfänger-Themen 5
S Resourcen-Dateien im Jar-File verfügbar machen (Intellij 14) Java Basics - Anfänger-Themen 14
A Wieso übergibt der nicht die bearbeitete txt file Java Basics - Anfänger-Themen 8
Ruvok Executable Jar File startet nicht Java Basics - Anfänger-Themen 3
R Ini File erstellen Java Basics - Anfänger-Themen 1
J file.lenght spinnt ab 50mb Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben