I am currently working on an android app that takes the contents of a requested website and searches it for certain words. I am unsure though how I can convert the InputStream into a String. I'm a pretty unexperienced so I guess my code is a little ugly:
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
private AppBarConfiguration mAppBarConfiguration;
String EanCode;
String FddbData;
InputStream stream;
public void Urlconnect() {
final Thread ConnectThread = new Thread(new Runnable(){
public void run(){
try {
URL url = new URL("https://fddb.info/db/de/suche/?udd=0&cat=site-de&search=" + EanCode);
URLConnection connection = url.openConnection();
InputStream stream = (InputStream) connection.getContent();
StreamToString();
} catch (Exception e){
e.printStackTrace();
}
}
});
ConnectThread.start();
}
2:
public void StreamToString() throws IOException {
Scanner scanner = new Scanner(stream);
StringBuffer sb = new StringBuffer();
while(scanner.hasNext()){
sb.append(scanner.toString());
}
Logger logger = Logger.getLogger(MainActivity.class.getName());
logger.info(sb.toString() + "bananeneis");
FddbData = sb.toString();
}
}
This is the Error I am getting:
W/System.err: at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
at java.util.Scanner.<init>(Scanner.java:568)
at com.example.prepper.MainActivity.StreamToString(MainActivity.java:22)
at com.example.prepper.MainActivity$4.run(MainActivity.java:9)
at java.lang.Thread.run(Thread.java:764)
Any Help is appreciated!
EDIT 2: Solved by removing InputStream in
URLConnection connection = url.openConnection();
InputStream stream = connection.getContent();
StreamToString();