Преобразуйте строку во входной поток XML в Java

Быть хорошим программистом обработки графики и обработки изображений не требует этого низкоуровневого знания, но я действительно очень не хочу быть невежественным о внутренностях того, что я использую. Я вижу два способа преследовать это - высокий уровень вниз или нижний уровень.

Нисходящий вопрос следующего, как действие прослеживает от операции высококачественной графики, например, нарисовать круг к аппаратным средствам. Узнайте OpenGL хорошо. Тогда источник к Мезаструктуре (свободный!) обеспечивает быстрый взгляд на то, как OpenGL может быть реализован в программном обеспечении. Источник к Xorg был бы следующим, сначала чтобы видеть, как действие идет от вызовов API до стороны клиента к X-серверу. Наконец Вы погружаетесь в драйвер устройства, который взаимодействует через интерфейс с аппаратными средствами.

Вверх дном: создайте свое собственное аппаратное обеспечение машинной графики. Думайте о способах, которыми это могло соединиться с компьютером - как обработать крупные числа пикселей через несколько регистров размера байта, как DMA будет работать. Запишите драйвер устройства и попытайтесь разработать графическую библиотеку, которая могла бы быть полезна для программистов приложения.

восходящий путь состоит в том, как я учился, несколько лет назад, когда это была возможность с медленными 8-разрядными микропроцессорами. Прямой опыт со взаимодействием через интерфейс схемы и аппаратного программного обеспечения дал мне хорошую оценку трудных проектных решений - например, нарисовать прямоугольники с помощью умных аппаратных средств в драйвере устройства или более высоком уровне. Ни одно из этого не имеет практической повседневной ценности, но обеспечило основу знания для понимания более новой технологии.

18
задан jobinbasani 2 October 2009 в 16:53
поделиться

3 ответа

You probably want to convert it to a Reader, not an InputStream. Use StringReader to do this. StreamSource has a constructor that takes a Reader, and you can pass that StreamSource to Transformer.transform().

I say you probably want a Reader rather than an InputStream because a String holds characters, not bytes, and an InputStream is a stream of bytes while a Reader is a stream of characters.

21
ответ дан 30 November 2019 в 06:02
поделиться
new StreamSource(new StringReader(str))
37
ответ дан 30 November 2019 в 06:02
поделиться

Use ByteArrayInputStream:

String S = ...;
InputStream source = new ByteArrayInputStream(S.getBytes(encoding))
2
ответ дан 30 November 2019 в 06:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: