• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

ArrayList speichern

ThrustLP

Redstoneengineer
Registriert
3 April 2013
Beiträge
35
Diamanten
0
Ich habe eine ArrayList:

ArrayList<String> players = new ArrayList<String>();


In dieser sind Strings. Wie kann ich sie in meiner Config Speichern und dann wieder richtig laden?



Danke!
 

MiCrJonas

Threadripper
Registriert
29 Oktober 2012
Beiträge
1.064
Diamanten
0
Zum speichern:
Code:
List<String> players = new ArrayList<>();
//Tue etwas mit der List
getConfig().set("pfad.zur.liste", players);

Und zum auslesen:
Code:
List<String> players = getConfig().getStringList("pfad.zur.liste");
 
Zuletzt bearbeitet:

Pappi

Schafhirte
Gesperrt
Registriert
28 Oktober 2012
Beiträge
141
Alter
40
Diamanten
0
Minecraft
Pappi / PapaHarni
Zum speichern:
Code:
List<String> players = new ArrayList<>();
//Tue etwas mit der List
getConfig().set("pfad.zur.liste", players);

Und zum auslesen:
Code:
List<String> players = getConfig().getStringList("pfad.zur.liste");

Wobei ich zum Auslesen auf Nummer sicher gehen würde und es so machen würde :
Code:
List<String> list = new ArrayList<>();
List<String> players = getConfig().getStringList("pfad.zur.liste", list);

So gibt es zumindest kein Fehler wenn der Pfad mal nicht bestehen sollte oder das Falsche Format hat.
 

ThrustLP

Redstoneengineer
Registriert
3 April 2013
Beiträge
35
Diamanten
0
Warum List<> anstatt ArrayList<>?



Uuuund ich bin wieder zu blöd -.-

Wo muss ich das hier einbauen wenn ich das mit den beiden ArrayListen machen will?:

Code:
package me.thrustlp.btfhelp;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin{
	
	String pl = "§6[BTFHelp] ";
	ArrayList<String> players = new ArrayList<String>();
	ArrayList<String> hilfen = new ArrayList<String>();
	
	
	@Override
	public void onEnable(){
		System.out.println("[BTFHelp] Geladen");
		loadConfig();
		
		
	}
	
	@Override
	public void onDisable(){
		System.out.println("[BTFHelp] Deaktiviert");
		
		
		
		
		
	}
	
	
	public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args){
		Player p = (Player) sender;
		
		if(cmd.getName().equalsIgnoreCase("hilfe")){
			if(p.hasPermission("BTFHelp.hilfe") || p.isOnline()){
				//CHANGE isOp
				if(args.length >= 1){
				
					String allArguments = "";
					
					 for(int i = 0; i < args.length; i++){
                         
                         allArguments += "§3" + args[i] + " ";
                         
                           
                         
                     }
					 
					 hilfen.add(allArguments);
					 players.add(p.getName());
					 
			        p.sendMessage(pl + "§aTicket erstellt! Bitte warte auf hilfe! Wenn du offline gehst bekommst du eine Nachricht wenn dir jemand hilft! Mache dann §4/helpmail §awenn du wieder da bist!");
					
					
					
					
					
					
				}else{
					p.sendMessage(pl + "§cBenutze /hilfe [Was brauchst du?]");
					
				}
				
				
			}else{
				
				p.sendMessage("§6[BTFHelp]§c Du hast keine Rechte dazu!");
				
			}
			
			
			
			return true;
		}
		
		if(cmd.getName().equalsIgnoreCase("helfen")){
			if(p.hasPermission("BTFHelp.helfen") || p.isOp()){
				if(!hilfen.isEmpty() && !players.isEmpty()){
					Player need = Bukkit.getServer().getPlayer(players.get(0));
					String nhelp = hilfen.get(0);
					
				
					if(need != null){
					
					if(need.isOnline()){
						p.sendMessage(pl + "§aDu hilfst nun §3" + need.getName());
						p.sendMessage("§aSein Problem: §a" + nhelp);
						need.sendMessage(pl + "§aDer Supporter§3 " + p.getName() + " §awird sich um dich kümmern!");
						
						Location needl = need.getLocation();
						p.teleport(needl);
						
						hilfen.remove(hilfen.get(0));
						players.remove(players.get(0));
						
						
						
					}
					
					
					
				}else{
					
					p.sendMessage("off");
					
				}
					
					
					
				}else{
					p.sendMessage(pl + "§cNiemand braucht gerade Hilfe!");
					
				}
				
				
				
			}else{
				
				p.sendMessage("§6[BTFHelp]§c Du hast keine Rechte dazu!");
			}
			
			return true;
			
		}
		
		
		
		
	
		
		return false;
		
	}
	
	
	public void loadConfig(){
		getConfig().addDefault("BHelp.arraydontedit", "");
		getConfig().addDefault("BHelp.arraydontedit2", "");
		
		getConfig().options().copyDefaults(true);
		
	}

}
 
Zuletzt bearbeitet:

MiCrJonas

Threadripper
Registriert
29 Oktober 2012
Beiträge
1.064
Diamanten
0
Code:
package me.thrustlp.btfhelp;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin{
	
	String pl = "§6[BTFHelp] ";
	ArrayList<String> players = new ArrayList<>();
	ArrayList<String> hilfen = new ArrayList<>();
	
	
	@Override
	public void onEnable(){
                players = getConfig().getStringList("pfad.zur.liste");
		System.out.println("[BTFHelp] Geladen");
	}
	
	@Override
	public void onDisable(){
		System.out.println("[BTFHelp] Deaktiviert");
		
		
		
		
		
	}
	
	
	public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args){
		Player p = (Player) sender;
		
		if(cmd.getName().equalsIgnoreCase("hilfe")){
			if(p.hasPermission("BTFHelp.hilfe") || p.isOnline()){
				//CHANGE isOp
				if(args.length >= 1){
				
					String allArguments = "";
					
					 for(int i = 0; i < args.length; i++){
                         
                         allArguments += "§3" + args[i] + " ";
                         
                           
                         
                     }
					 
					 hilfen.add(allArguments);
					 players.add(p.getName());
					 
			        p.sendMessage(pl + "§aTicket erstellt! Bitte warte auf hilfe! Wenn du offline gehst bekommst du eine Nachricht wenn dir jemand hilft! Mache dann §4/helpmail §awenn du wieder da bist!");
					
					
					
					
					
					
				}else{
					p.sendMessage(pl + "§cBenutze /hilfe [Was brauchst du?]");
					
				}
				
				
			}else{
				
				p.sendMessage("§6[BTFHelp]§c Du hast keine Rechte dazu!");
				
			}
			
			
			
			return true;
		}
		
		if(cmd.getName().equalsIgnoreCase("helfen")){
			if(p.hasPermission("BTFHelp.helfen") || p.isOp()){
				if(!hilfen.isEmpty() && !players.isEmpty()){
					Player need = Bukkit.getServer().getPlayer(players.get(0));
					String nhelp = hilfen.get(0);
					
				
					if(need != null){
					
					if(need.isOnline()){
						p.sendMessage(pl + "§aDu hilfst nun §3" + need.getName());
						p.sendMessage("§aSein Problem: §a" + nhelp);
						need.sendMessage(pl + "§aDer Supporter§3 " + p.getName() + " §awird sich um dich kümmern!");
						
						Location needl = need.getLocation();
						p.teleport(needl);
						
						hilfen.remove(hilfen.get(0));
						players.remove(players.get(0));
						
						
						
					}
					
					
					
				}else{
					
					p.sendMessage("off");
					
				}
					
					
					
				}else{
					p.sendMessage(pl + "§cNiemand braucht gerade Hilfe!");
					
				}
				
				
				
			}else{
				
				p.sendMessage("§6[BTFHelp]§c Du hast keine Rechte dazu!");
			}
			
			return true;
			
		}
		
		
		
		
	
		
		return false;
		
	}
	
	
	public void loadConfig(){
		getConfig().addDefault("BHelp.arraydontedit", "");
		getConfig().addDefault("BHelp.arraydontedit2", "");
		
		getConfig().options().copyDefaults(true);
		
	}

}

List ist eine Erweiterung von ArrayList. Außerdem kannst du bei "new ArrayList<>" das String weglassen. Der Compiler macht dies automatich.
 
Oben