Datei auslesen in eine Hashmap (Java, Location)

2 Antworten

Bei der Methode 

readObject();

vom ObjectInputStream muss das gelesene Objekt nur gecastet werden.

also so:

HashMap map = (HashMap) ois.readObject();

Du solltest übrigens auf deine Variablennamen achten.

ObjectInputStream ois = new ObjectInputStream(new FileInputStream(new File("File.dat")));
HashMap mp = (HashMap)ois.readObject();

Anonyme Objekte wären angebrachter.

Du kannst bei readObject() keinen Parameter übergeben. Für sowas gibt es die Dokumentationen und Google.

Welcher Fehler ist im Programmcode?

Ich möchte ein Plugin programmieren, welches in Minecraft mithilfe von CanaryMod ene Notunterkunft baut. Allerdings wird beim kompilieren ein Fehler angezeigt und zwar hier:

Location aussenQuaderPosition = new Location(pos.getX()+4, pos.getY(), pos.getZ()); Location innenQuaderPosition = new Location(pos.getX()+5, pos.getY(), pos.getZ()+1);

Quader aussen = new Quader(4, 10, 10, BlockType.BrickBlock ); Quader innen = new Quader(3, 8, 8, BlockType.Air);

aussen.bauen(spieler, aussenQuaderPosition); innen.bauen(spieler, innenQuaderPosition);

Laut der Eingabeaufforderung ist bei

Quader aussen = new Quader(4, 10, 10, BlockType.BrickBlock ); Quader innen = new Quader(3, 8, 8, BlockType.Air);

ein Fehler, Zitat: "error cant find symbol: Quader aussen = new Quader(4, 10, 10, BlockType.BrickBlock ^ ssymbol: class Quader location: class NotunterkunftPlugin"

Dieselbe Fehlermeldung wird nochmal in derselben, zweimal in der einen tiefer gelegenen angezeigt. Dringend Hilfe, hatte meinen bonennten versprochen den Server bal online zu stellen. Ganzer Code in einer Antwort ;-)

...zur Frage

Warum geht das Inventar nicht zu?! (Java)

Ich hab ein Problem, welches ist, dass wenn man die Enderchest aufmacht, es wieder geschlossen und ein virtuelles geöffnet werden soll. Allerdings schließt sich das Inventar nicht mit p.closeInventory(); was mache ich falsch? Ich bin ratlos.

ps: Bis zum Virtuellen Inventar bin ich noch nicht gekommen, da können also auch noch Fehler drin sein.

Hier ist der Code: package org.gloin01.test;

import java.util.HashMap; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.inventory.InventoryOpenEvent; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack;

public class EventListener implements Listener{

public Inventory inv = null;

HashMap<String, ItemStack[]> inventory = new HashMap<>();


public EventListener(TestPlugin plugin){

    plugin.getServer().getPluginManager().registerEvents(this, plugin);

}


@EventHandler
public void onPlayerTot(InventoryOpenEvent ev){

    String inve = ev.getInventory().getName();
    Player p = (Player) ev.getPlayer();
    if(inve == "container.enderchest"){

        p.closeInventory();
        inv = p.getServer().createInventory(null, 54, "§c" + p.getDisplayName() + "'s §2Enderchest");
        p.openInventory(inv);


        inventory.put(p.getName(),p.getInventory().getContents());

    }
}

}

...zur Frage

Java Dateien Kopieren

Halli Hallo!

Ich möchte ein Javaprogramm schreiben, dass mir eine Datei 1:1 kopiert. Also hab ich mir gedacht, ich bau mir einen Printstream zum schreiben und einen BufferedReader zum lesen. Soweit, sogut. Ich will aber jpg-Dateien kopieren. Ein kleines Testprogramm, um zu schauen, ob das überhaupt klappt, sieht so aus:

import java.io.*;
import java.net.*;

class PictureTest {
  public static void main(String arg[]) throws Exception {
    BufferedReader source = new BufferedReader(new InputStreamReader(new FileInputStream(new File("Zwischenablage01.jpg"))));
    PrintStream datei = new PrintStream(new FileOutputStream(new File("Teststrip.jpg")));
    String s = source.readLine();
    while (s != null) {
      datei.println(s);
      s = source.readLine();
    }
  }
}

Man sollte meinen, dass es jede Zeile, die es in source einliest, auch wieder über datei.println() ausgibt ... tut es aber nicht.

Wie kann man das lösen?

...zur Frage

Lernhilfen für's Programieren?

Hallo an alle,

Mein Freund programmiert für seinen Minecraftserver eigene Plugins und hat angeboten mir das Programmieren beizubringen. Nachdem ich schon "Vorkenntnisse" von Programmieren habe (soweit man es Vorkenntnisse nennen kann, da ich das in der Schule hatte) (HTML, Python) weis ich was auf mich ungefähr zukommt, wenn ich es wirklich können will. Meine Frage ist nun: weis jemand Internetseiten und co. wo man eine "Anleitung" bekommt, da mein Freund mir das alles erklären kann aber ich letztendlich keine eigene Sachen machen kann sondern er sagt was ich schreiben soll. (Er erklärt es mir über Skype und Bildschirmübertragung da wir zu weit auseinander wohnen)

Er möchte es mir mit Eclypse (so heißt das Programm glaub ich) beibringen.

Nicht wundern wenn ich viele Fehler in dem Text hab (schreib es gerade mit nem Handy und da ist alles etwas unübersichtlich)

Danke schonmal für hilfreiche Antworten ✌🏼️👍🏽

Gruß Faolan

P.S. Hab schon nach so Anleitungen gesucht und habe zuuuuuuu viel gefunden und weis nicht wo man wirklich was lernen kann ( und YT-Videos sind auch recht verwirrend für Anfänger)

Ich denke das es wahrscheinlich auch keine " Schritt für Schritt-Anleitung" gibt da Programmieren so ein komplexes Thema ist

...zur Frage

Hashmap Key <INTEGER> mit int variable vergleichen Aber wie?

ich sitze grad an einer Hashmap in Java und würde gern den Key mit einer int Variable vergleichen Geht das überhaupt so? Beispiel

HashMap FeierTage = new HashMap(); FeierTage.put(13, "13. Tag im Jahr");

int variable = 14;

wie kann ich die beiden jetzt mit einander vergleichen?

Vielen Dank im Vorraus

RD

...zur Frage

Was möchtest Du wissen?