SetCellValue deprecated?

J

JJay-JJay

Gast
Hallo.

Ich arbeite mit Java und Excel mit der Schnittstelle Apache POI und versuche jetzt in eine Excel-Zelle zu schreiben.

Diese Code-Zeile wird mir als 'deprecated' angezeigt.
Java:
 cell.setCellValue("a test");
Ist der Befehl veraltet? Auf der POI-Seite finde ich keine Alternative. Kann mir jemand weiterhelfen?

Für einen besseren Überblick hier das Code-Stück, aus dem die Zeile stammt:

Java:
// Formatieren und Rechnen
	void pb_verarbeiten_for_MouseClicked() {
		HSSFWorkbook wb = null;
		FileInputStream input = null;
		try {
			input = new FileInputStream(fpath);
			System.out.println("Pfad angekommen.");
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			System.out.println("fpath " + fpath);
			System.out.println("Pfad nicht gefunden.");
			Fehler fail = new Fehler();
			e.printStackTrace(); 
		}
		try {
			wb = new org.apache.poi.hssf.usermodel.HSSFWorkbook(input);
			System.out.println("Es funktioniert.");
		} catch (IOException e) {
			// TODO Auto-generated catch block
			System.out.println("Pfad konnte nicht erfolgreich übernommen werden.");
			e.printStackTrace();
		}
		try {
			input.close();
		} catch (IOException e) {
			System.out.println("Fehler beim Schließen des FileInputStreams.");
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	    HSSFSheet sheet = wb.getSheetAt(0);
	    HSSFRow row = sheet.getRow(2);
	    HSSFCell cell = row.getCell((short) 3);
	    if (cell == null)
	        cell = row.createCell((short) 3);
	    cell.setCellValue("a test");
	    System.out.println("In die Zelle geschrieben.");

	    // Write the output to a file
	    FileOutputStream fileOut = null;
	    HSSFWorkbook wbOut = new HSSFWorkbook();
	    FileOutputStream fileOut1 = null;
	    System.out.println("FileOutput");
		try {
			fileOut1 = new FileOutputStream("Test.xls");
			 System.out.println("FielOutputStream erstellt.");
		} catch (FileNotFoundException e1) {
			System.out.println("Fehler beim Erstellen des FileOutputStreams.");
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
	   
	    try {
			wb.write(fileOut1);
			 System.out.println("in FileOutput geschrieben.");
		} catch (IOException e) {
			System.out.println("Fehler beim Schreiben in den FileOutputStream.");
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	    try {
			fileOut1.close();
			 System.out.println("FileOutput geschlossen.");
		} catch (IOException e) {
			System.out.println("Fehler beim Schließen des FileOutputStreams.");
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

Danke im Voraus.

Grüße
 
J

JJay-JJay

Gast
Ja, da habe ich auch als erstes geschaut und eben nichts gefunden, auch keine Alternative oder irgendeine Notiz, was der Fehler sein könnte. Deshalb hoffe ich, dass hier jemand mehr weiß als ich. :) Oder noch eine andere Idee hat, wo man nachsehen könnte.
 
J

JJay-JJay

Gast
Ah, vielen Dank. Dann hab ich wohl doof gegoogelt. Ich habe das gleich ausprobiert. Die Zeile lautet jetzt
Java:
cell.setCellValue(HSSFRichTextString "a test");

Doch leider erkennt er das nicht. Die Fehlermeldung lautet:
Java:
HSSFRichTextString cannot be resolved to a variable line 336 Java Problem
Syntax error on token ""a test"", delete this token line 336 Java Problem

Er bietet mir auch nur an, eine Konstante oder Variable it dem Namen anzulegen, aber so habe ich das nicht verstanden. Muss ich es noch irgendwie importieren und er zeigt mir das nur nicht an?

Danke im Voraus wieder.

Grüße
 
S

SlaterB

Gast
was ist denn das für eine Codezeile, man kann doch nicht ohne Sinn Zeichen aneinanderreihen?,
irgendwelche Programmierkenntnisse vorhanden oder kopierst du dir alles zusammen?..

dein Fehler ist in etwa derselbe wie eine Zeile
Java:
input = FileInputStream fpath;
die du in deinem Code schon besser hast (suchen und Verbesserung entsprechend übernehmen bitte selber)
 
G

Gast2

Gast
Du musst die Klasse in der die Konstante definiert ist vorstellen.

z.B. KlasseA.KONSTANTENNAME
 
J

JJay-JJay

Gast
was ist denn das für eine Codezeile, man kann doch nicht ohne Sinn Zeichen aneinanderreihen?,
irgendwelche Programmierkenntnisse vorhanden oder kopierst du dir alles zusammen?..

Das meiste is in der Tat zusammenkopiert. Ich hatte nur einen einwöchigen Grundkurs als erste Begegnung mit Java und soll jetzt so ein feines Programm zimmern. :p

Der Rest kommt daher, dass ich einfach schwer von Begriff bin. Ich entschuldige mich.
War aber trotz der fiesen Formulierung n gutes Beispiel, das hab ich gleich gerafft. Also danke.
 

Ähnliche Java Themen

Neue Themen


Oben