2017-03-25 9 views
-2

Ich bekomme zwei Zeichenfolgen und versuchen zu überprüfen Wenn Zeichenfolge A enthält Zeichenfolge B. aber das Problem ist, ich bekomme den Fehler Die Methode enthält (String) ist nicht definiert für den Typ StringBuilder. Was ist dieser Fehler? und wie repariere ich das?Überprüfen, ob eine Zeichenfolge eine Unterzeichenfolge enthält.

// 1) get saved link 
    SharedPreferences preferences = PreferenceManager 
      .getDefaultSharedPreferences(getBaseContext()); 
    String LINK = preferences.getString("random54", ""); 

    // 2) get text from savedlinks.txt to string 
    String sdcard = Environment.getExternalStorageDirectory() + "/X ADB/"; 
    File file = new File(sdcard, "savedlinks.txt"); 
    StringBuilder text = new StringBuilder(); 
    try { 
     BufferedReader br = new BufferedReader(new FileReader(file)); 
     String line; 
     while ((line = br.readLine()) != null) { 
      text.append(line); 
      text.append('\n'); 
     } 
     br.close(); 
    } catch (IOException e) { 
    } 

    // 3) check if link already present in the .txt file or not 
    if (text.contains(LINK)) { 
     // DONT SAVE CAUSE DUPLICATE 
    } else { 
     // SAVE LINK IN HISTORY 
+3

'text.toString(). enthält (LINK)' –

+0

Danke, dass funktioniert – user352806

Antwort

0
text.toString().contains(LINK) 
1

Text ist ein StringBuilder, kein String.

if (text.toString().contains(LINK))

1

String Klasse nicht enthält().

Verwenden Sie toString(), um zuerst in eine Zeichenfolge zu konvertieren.

text.toString().contains(LINK) 
0

können Sie toString() -Methode auf jedem Java-Objekt verwenden, um eine String-Darstellung davon zu bekommen, und Sie können auch diese Methode in jeder Klasse außer Kraft setzen Sie Ihre eigene toString Umsetzung.

In Ihrem Fall:

text.toString().contains(LINK) 

wird die Arbeit tun (hier gibt es die toString Methode der Stringbuilder verwenden, die eine Zeichenfolge, die die Daten in dieser Reihenfolge zurückgibt)

Hinweis: Nicht alle toString zurückkehrt eine erwartete Zeichenfolge vor allem mit Arrays und komplizierte Objekte

Verwandte Themen