String-Vergleich geht nicht

aligator

Mitglied
hi
ich hab folgendes problem:
wenn ich folgenden code ausführe und die datei auch schon mit den config-strings gefüllt ist, dann überspringt er die if-abfrage:

if(args[0].trim() == property)

obwohl ich mir die Variable property und args[0] mal ausgegeben lassen habe und beide variablen identisch waren.

und das verstehe ich einfach nicht. ???:L

wie kann bei dem vergleich zweier identischer variablen false heraus kommen?

das .trim() hab ich dazugetan, weil ja vieleicht noch leerzeichen dabei sind, hat aber nichts gebracht... :noe:



(ich weiß, is nich so gut der code, aber ich hab nur schnell was ausprobieren wollen...)
Java:
	public static String readConfig(File fileConfig, String property, String defaultVal)
	{
		if(fileConfig.exists())
		{
			try {
				BufferedReader file = new BufferedReader(new FileReader(fileConfig));
				
				Boolean found = false;
				String value = "";
				
				while(file.ready()) {
					
				
					String[] args = file.readLine().split("=");
					

					if(args[0].trim() == property)
					{
						if(args[1].trim() != null)
						{
							found = true;
							value = args[1].trim();
						}
					}
				}
				
				file.close();
				
				if(!found || value == "")
				{
					FileWriter writer = new FileWriter(fileConfig, true);
					writer.write(property + "=" + defaultVal);
					writer.write(System.getProperty("line.separator"));
					
					writer.flush();
					writer.close();
					
					
					return defaultVal;
				}
				else
				{
				System.out.print(" take old ");
					return value;
				}

				
			} catch (IOException ex) {
				ex.printStackTrace();
			}
			
			
		}
		else
		{
			try {
				fileConfig.createNewFile();
				
				FileWriter writer = new FileWriter(fileConfig, true);
				writer.write(property + "=" + defaultVal);
				writer.write(System.getProperty("line.separator"));
				
				writer.flush();
				writer.close();
				
				return defaultVal;
			
			} catch (IOException ex) {
				ex.printStackTrace();
			}
		}	
	
	
		return defaultVal;
	
	}

Mfg aligator
 

Zurück
Oben