Ну что, джаваебы, соснули?
В чём проблема с фиксированным размером буфера?
в чём проблема с Java 7 и выше, пример на шарпе вообще требует .NET Framework 4.5
Да что ви говорите?
File.Copy доступен по крайней мере с framework 2.0, нет возможности проверить с более ранним.
File.Copy доступен по крайней мере с framework 2.0, нет возможности проверить с более ранним.
давай пруфы
Официальная документация за пруф годиться?
Лень собрать в студии тестовый проект с framework 2.0?
я же джаваёб, откуда у меня студия?
Поддержка Java 7 включена только в Android 4.4, остальные версии соснут, что не есть хорошо.
Пример на шарпе требует .NET Fraemwork 2.0 и выше (может и ниже, но в 2.0 я видел это)
Пример на шарпе требует .NET Fraemwork 2.0 и выше (может и ниже, но в 2.0 я видел это)
А шарп в андроид вообще не включён и не будет, и не надо тут рассказывать про моно и прочие перверции
Я и не где не говорил про Шарп на Дройд. Если б был нормальный шапр на андройд, я б не трахался с это клiтой джавой.
технологии не виноваты в том что у тебя руки из жопы
Xamarin Studio в помощь.
В том, если копируемый файл окажется больше, чем выделенный буфер, будет жопа. Упомянутй InputStream, который возвращает AssetManager.Open не позволяет узнать размер файла (ну, на то он и Stream). Таким образом, надо брать размер буфера заведомо выше максимального файла, который надо копировать. Это не труЪ, т.к
1) для мелких файлов в пустую выделяется лишняя память
2) всегда есть шанс, что какой-то файл окажется больше
1) для мелких файлов в пустую выделяется лишняя память
2) всегда есть шанс, что какой-то файл окажется больше
ты с ума сошел? ты где видел, чтобы буфер для копирования брался больше размера файла? что за ересь?
не трогай его, он походу индус
Я сам знаю, что это ересь. Я облазил дохрена тем на StackOverfollow, и в 90% из них, где просят "android\java copy file" предлагают такой способ. Остальные способы с их недостатками так же перечислены.
Если Вы предложите способ, как правильно, не по-индусски копировать файлы в Java (притом в Java 6 и без сторонних либ), я буду премного благодарен. Или предложите, как вытащить channel из InputStream - тот же StackOverfollow не дал мне ответа.
Если Вы предложите способ, как правильно, не по-индусски копировать файлы в Java (притом в Java 6 и без сторонних либ), я буду премного благодарен. Или предложите, как вытащить channel из InputStream - тот же StackOverfollow не дал мне ответа.
вот поколение пошло, не могут даже файл скопировать без StackOverfollow, с буферами нормальный пример, пользуйся и не еби никому мозг
Не работал я с джавой, вот и ищу любую инфу, какую гугль подаст - и стаковерфоллов, и оракл доки и проч.
т.е. цикл в примере тебя не смущает?
И цикл смущает, и чтение файла в память, чтоб копировать, смущает, все смущает
ух ты, а файл можно скопировать без чтения его в память? ну-ка ну-ка, с этого места поподробней
Большие файлы можно копировать без чтения их в память целиком, а только кусками.
ну так и читай его кусками, вон у тебя в примере килобайтный буфер
1) man 2 splice. Данные в userspace не попадут, так даже "безопаснее".
2) В системе команд SCSI есть COPY. Выполняя её, диск должен сам скопировать данные из одного набора секторов в другой. В этом случае данные вообще до ОЗУ не доберутся. Вот только хз, могут диски эту команду обрабатывать или нет.
2) В системе команд SCSI есть COPY. Выполняя её, диск должен сам скопировать данные из одного набора секторов в другой. В этом случае данные вообще до ОЗУ не доберутся. Вот только хз, могут диски эту команду обрабатывать или нет.
нихуя себе, языкосрачи, а вброс кстати тупой и унылый
Ява может p/invoke?
нет, так же как шарп не может в JNI, что ты хотел этим сказать?
А то, что у любой оси есть функции копирования файлов, достаточно к ним обратиться.
да мой друг, но Java и создавалась для того чтобы проги написанные на ней были кроссплатформенными и без костылей вроде проверки оси и вызова соответствующего метода api
"Ну что, джаваебы, соснули?"
они соснули и без этого, длЯ них это нормальное перменентное состояние
они соснули и без этого, длЯ них это нормальное перменентное состояние
только вот си шарп тоже ниочень
контралцэ;
контралвэ.
контралвэ.
ППц ... скрафти себе библиотеку и пользуйся функциями... будет тебе даже синтаксис как в шарпее...
А вообще толсто дети мои, слишком толсто... сравниваем трактор с паровозом.
А вообще толсто дети мои, слишком толсто... сравниваем трактор с паровозом.
Крестобогов не волнуют проблемы холопов.
Действительно... У меня игра написана на NDK, но для копирование некоторых файлов из Assets в /data/data/... я почему-то решил юзать Java и AssetManager, как написано в андройд доках.
Но ведь можно же копировать через сам NDK! Я слоупок.
Спасибо тебе, добрыйчеловеккрестобог!
Но ведь можно же копировать через сам NDK! Я слоупок.
Спасибо тебе, добрый
Пример с циклом вполне годный, к нему еще можно приделать прогресс и вообще будет збс.
C# совместим с андроид?
нихт ((
тоесть проблема только в том что такого метода нету в стандартной комплектации в джава? библиотеку подключить это наверное очень сложно.
Подключение лишних либ на дройде может обернуться проблемами совместимости.
например
Например на разных версиях дроида некоторые ф-ии могут быть недоступны. И если библа их юзает - фейл. Конечно, если библа юзает ф-ии, которые 146% есть в минимальном API Level, на который ты ориентируешь приложение - то ок.
А теперь тоже самое, только по-русски. библа их юзает, фейл - это ты так свою крутизну показываешь? а простецкий пример с буфером, который во всех книжках по программированию приводится, использовать не могешь, как же так?
Всем спасибо, все свободны. Я осознал свою полнейшую никчемность и непроходимую тупость. Без всякого сарказма. Приношу извинения перед джаваебами джавистами. Я говно.
в силу специфики работы, кожу и на object-c, и на плюсах, яве и шарпе (это ужасбля) + работа с бд (SQL).
Скажу по личному опыту, на шарпе удобнее всего.
На плюсах приходиться делать киломитровые бороды того, что на яве\шарпе достигнуть легче, зато можно городить великолепные велосипеды, костыли и хаки =)
Ява... она меня напрягает сотней - другой особенностей (у нее всегда "я не такая, не так, не здесь, не туда"). Зато разработка быстрее плюсов, но медленнее шарпа.
Ну а яблочный си я просто ненавижу за извращенный синтаксис (сиди и считай скобочки блин) и очень неудобное IDE (Эклипс, и тот для меня удобнее оказался, на первом месте, тем не менее, визуалка от мелкомягких)
Скажу по личному опыту, на шарпе удобнее всего.
На плюсах приходиться делать киломитровые бороды того, что на яве\шарпе достигнуть легче, зато можно городить великолепные велосипеды, костыли и хаки =)
Ява... она меня напрягает сотней - другой особенностей (у нее всегда "я не такая, не так, не здесь, не туда"). Зато разработка быстрее плюсов, но медленнее шарпа.
Ну а яблочный си я просто ненавижу за извращенный синтаксис (сиди и считай скобочки блин) и очень неудобное IDE (Эклипс, и тот для меня удобнее оказался, на первом месте, тем не менее, визуалка от мелкомягких)
А какие вместо эклипса есть IDE, он мне кажется просто квинтессенцией неюзабельности
NetBeans, IDEA ? блокнотом можно =))
честно говоря ничего такого смертельно неудобного не нашел в эклипсе. Он не идеален, но и подсветка есть, и сносное форматирование текста.
честно говоря ничего такого смертельно неудобного не нашел в эклипсе. Он не идеален, но и подсветка есть, и сносное форматирование текста.
Жутко загроможденный интерфейс, притом такой удобной фичи, как в студии, автоскрытия окон, нет. Вот и приходится:
кодишь - сузил вывод и логкэт, дерево проектов и пр.
запускаешь - растягиваешь окно вывода
кодишь - сузил вывод и логкэт, дерево проектов и пр.
запускаешь - растягиваешь окно вывода
А почему не подходят буферезируемые потоки?
BufferedReader reader = null;
try {
reader = new BufferedReader(
new InputStreamReader(new FileInputStream("input.txt")));
}
catch (FileNotFoundException e) {
}
BufferedReader reader = null;
try {
reader = new BufferedReader(
new InputStreamReader(new FileInputStream("input.txt")));
}
catch (FileNotFoundException e) {
}
Призываю Эскобара!
Делфи дрочеры подключились к треду?)
Как догалался?
Учуял :)
Рейтинг поста сначала предсказуемо ушел в минус, потом в плюс, а потом в минус. Американские горки.
Короче говно ваши жабы и дотнеты, только нативный код!
Чтобы написать коммент, необходимо залогиниться