Processing:Справочник языка Processing/createInput()
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
createInput() [1]
Обозначение
createInput()
Описание
Это метод, используемый продвинутыми программистами для того, чтобы инициализировать и открыть Java-объект InputStream. Он полезен в случаях, когда вам хочется воспользоваться средствами PApplet, чтобы без труда открывать файлы из URL или папки данных, но вам также нужен объект InputStream, позволяющий использовать другие части Java, чтобы иметь больше контроля над чтением потока.
Имя файла может иметь следующие форматы:
- URL – например, createInput("http://processing.org/")
- Название файла, расположенного в папке «data» текущего скетча
- Полный путь к файлу на локальном носителе (когда скетч запущен как приложение)
Если запрошенного файла нет, метод вернет нулевое значение. Если вы не онлайн, этот метод также проверит, правильно ли указан регистр в названии файла, который запрашивает пользователь. Если регистр не тот, в консоли будет напечатана ошибка. Это помогает предотвратить проблемы, которые появляются, когда скетч экспортируется в сеть, где чувствительность к регистру важна – в противовес запуску скетча внутри среды разработки Processing Development Environment (PDE) на Mac OS или Windows, где чувствительность к регистру предусмотрена, но игнорируется.
Если файл заканчивается на *.gz, этот GZIP-архив будет автоматически распакован. Если вам не нужна автоматическая распаковка, используйте метод createInputRaw().
В ранних версиях Processing этот метод назывался openStream().
Синтаксис
createInput(filename)
Параметры
filename – файл, используемый в качестве входных данных. Тип данных – String
Возвращаемое значение
Тип данных – объект InputStream
Пример
// загружаем локальный файл 'data.txt'
// и инициализируем новый объект InputStream:
InputStream input = createInput("data.txt");
String content = "";
try {
int data = input.read();
while (data != -1) {
content += data;
data = input.read();
}
}
catch (IOException e) {
e.printStackTrace();
}
finally {
try {
input.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
println(content);
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |