Kiedyś to pytanieUtwórz kopię InputStream z HttpURLConnection dzięki czemu może być stosowany dwa razy
How do I convert an InputStream to a String in Java?
przekonwertować InputStream do String z tym kodem:
public static String convertStreamToString(java.io.InputStream is) {
java.util.Scanner s = new java.util.Scanner(is).useDelimiter("\\A");
return s.hasNext() ? s.next() : "";
}
My inputstream pochodzi z HttpURLConnection InputStream, a kiedy wykonuję konwersję do String, strumień wejściowy zmienia się i nie mogę go dłużej używać. Jest to błąd, który pojawia się:
Premature end of file.' SOAP
Co mogę zrobić, aby moje InputStream, kiedy przekonwertować go na ciąg z odpowiednimi informacjami ?.
Speciffically jest to informacja, która zmienia:
inCache = true (before false)
keepAliveConnections = 4 (before 5)
keepingAlive = false (before true)
poster = null (before it was PosterOutputStream object with values)
Dziękuję.
Eduardo: Czy to możliwe, aby utworzyć kolejną InputStream i użyć go do drugiego klienta? Po odczytaniu danych w tej metodzie (convertStreamToString) można umieścić te dane z powrotem w innym strumieniu (np. ByteArrayInputStream), a następnie wysłać je do drugiego klienta, który musi odczytać te same dane ze strumienia wejściowego. – mhshams
Cześć Mohammad, myślę, że nie rozumiem w pełni tego, co masz na myśli. Czy możesz odpowiedzieć na pytanie, podając więcej szczegółów ?. Będę więcej niż szczęśliwy mogąc dać ci nagrodę, jeśli wszystko będzie dobrze. Tak, masz rację w swoim komentarzu do drugiego pytania, muszę zachować mój InputStream nienaruszony, aby przekonwertować go, a następnie poprawnie do wiadomości SOAP. Dziękuję Ci!. – Eduardo