Бинарная схема принятия решений является одной из моих любимых структур данных или на самом деле Уменьшенной заказанной бинарной схемой принятия решений (ROBDD).
Подобные структуры могут, например, использоваться для:
, что много проблем могут быть представлены как булево выражение. Например, решение suduku может быть выражено как булево выражение. И создание BDD для того булева выражения сразу приведет к решению (решениям).
Use java.net.URL
to get an InputStream
:
final URL url = new URL("http://www.abc.com/file.xml");
final InputStream in = new BufferedInputStream(url.openStream());
// Read the input stream as usual
Exception handling and stuff omitted for brevity.
Ответ Дэйва Рэя действительно быстрый и простой, но он не будет работать с переадресацией HTTP или если вам, например, нужно пройти через прокси-сервер, требующий аутентификации. К сожалению, стандартные классы Java API (в java.net) лишены некоторых функций или их трудно использовать в таких обстоятельствах.
Библиотека с открытым исходным кодом Apache HttpClient может автоматически обрабатывать перенаправления и упрощает работу с прокси-серверами, требующими аутентификации.
Вот простой пример:
HttpClient client = new HttpClient();
GetMethod method = new GetMethod("http://www.abc.com/file.xml");
int statusCode = client.executeMethod(method);
if (statusCode != HttpStatus.SC_OK) {
System.err.println("Method failed: " + method.getStatusLine());
}
byte[] responseBody = method.getResponseBody();
Если вы планируете использовать модель W3C DOM и не интересуетесь какими-либо деталями ввода-вывода или HTTP, вы можете сделать следующее:
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
...
final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
final DocumentBuilder builder = factory.newDocumentBuilder();
final Document document = builder.parse("http://www.abc.com/file.xml");