Minull on seuraavan lainen tiedostojen kopiointi. Se ei vaan kopioi kuvia oikein. Miten sitä pitäisi muuttaa?
private void copyFile() {
if(input == null || output == null)
return;
try {
String name = input.getName();
File file = new File(output, name);
System.out.println("file = " file.getPath());
if(!file.exists())
file.createNewFile();
BufferedReader br = new BufferedReader(
new InputStreamReader(
new FileInputStream(input)));
BufferedWriter bw = new BufferedWriter(
new OutputStreamWriter(
new FileOutputStream(file)));
String line;
while((line = br.readLine()) != null) {
bw.write(line, 0, line.length());
bw.newLine();
}
br.close();
bw.close();
} catch (IOException e) {
System.err.println("Exception occured:");
System.out.println(e.getMessage());
}
System.out.println("Copying done");
System.exit(0);
}
Kopiointi
4
534
Vastaukset
- ddddssasd
Sinun pitää käsitellä tiedostoja binäärimuodossa jos haluat että muutkin kuin tekstitiedostot toimivat.
En ole java guru mutta uskoakseni "binäärivirta" tai "tavuvirta" taitaa olla suomenkielinen termi, jolla löydät tähän liittyvää asiaa suomeksi.- Javakko
Jep. BufferedReader ja BufferedWriter on tarkoitettu tekstiä varten. Kuvatiedostot menee tuossa operaatiossa varmasti rikki.
Periaatteessa voit käyttää suoraan tuota FileInputStream luokan read() metodia tavujen lukemiseen ja FileOutputStream luokan write() metodia sen luetun tavun kirjoittamiseen. Ja saman teet tiedoston kaikille tavuille (file.length() kertoo alkuperäisen tiedoston pituuden).
Tehoton tapa, mutta pitäisi toimia. - srthstr
Javakko kirjoitti:
Jep. BufferedReader ja BufferedWriter on tarkoitettu tekstiä varten. Kuvatiedostot menee tuossa operaatiossa varmasti rikki.
Periaatteessa voit käyttää suoraan tuota FileInputStream luokan read() metodia tavujen lukemiseen ja FileOutputStream luokan write() metodia sen luetun tavun kirjoittamiseen. Ja saman teet tiedoston kaikille tavuille (file.length() kertoo alkuperäisen tiedoston pituuden).
Tehoton tapa, mutta pitäisi toimia.Ei BufferedReader ole rajoitettu mitenkään virran sisällön suhteen. Ainoa vika tuossa koodissa oli se, että siinä käytettiin readLine-metodia, kun olisi pitänyt käyttää read-metodia. readLine lukee nimensä mukaisesti rivin, eikä kuvissa ole rivejä.
- Javakko
srthstr kirjoitti:
Ei BufferedReader ole rajoitettu mitenkään virran sisällön suhteen. Ainoa vika tuossa koodissa oli se, että siinä käytettiin readLine-metodia, kun olisi pitänyt käyttää read-metodia. readLine lukee nimensä mukaisesti rivin, eikä kuvissa ole rivejä.
BufferedReaderin Javadoc-kuvaus alkaa "Reads text from a character-input stream" ja read() metodi sanoo "Reads a single character". Tuo kyllä kuulostaa kovin tekstilähtöiseltä, en suosittelisi tuota käyttämään minkä tahansa tavuvirran lukemiseen.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Muistakaa persut, että TE petitte, ei kokoomus
Miksikö kukaan ei arvostele kokoomusta? No sen vuoksi, että kokoomus noudattaa vaalilupauksiaan. Sen sijaan TE persut,1103009Seuraava hallituspohja - Kokoomus, kepu, persut + KD
Kokoomus saa ainakin 20% kannatuksen ensi vaaleissa, keskusta sanoisin noin 15%, persut todennäköisesti enemmän, ehkä 171912700Outo ilmiö - vasemmistolaiset eivät kirjoita mitään kokoomuksesta
joka sentään johtaa hallitusta, ja jonka talouspolitiikkaa noudatetaan. Nämä muutamat vasemmistolaiset jotka täällä aina612139Väestöstä vain vassarit vaihtuvat nopeammin kuin persut
Kevääseen 2023 verrattuna vassareita 50 prosenttia enemmän, ja persuja 25 prosenttia vähemmän.11431Maria Veitola kommentoi soutelija Saarion huomionhakuisuutta
"Minusta on jotenkin kuvottavaa, kuinka kovalla intensiteetillä Suomi-media seuraa miessankari Jari Saarion merihätää. S2311380Vihervassarit
Vihervassarit sitä, vihervassarit tätä. Minulla on paha mt-ongelma. Se tuli lobotomian jälkioireina. Vihervassarit tät221320Lopetan ikävöinnin
Ei meistä enää koskaan tule mitään. Olen ikävöinyt ja kaivannut enkä saa mitään vastakaikua ja lämpöä. Parempi erillään31121Ei osattu ratkaista etääntymistä
Mä jäädyin eikä sulla ole taitoa sulattaa. Parempi antaa olla, vaikka toivoin jotain muuta. Miehelle.115890Ei ole liian myöhäistä..
Tule mun luo ja katso silmiin, niin saadaan taas se sanaton yhteys ja sano sitten vain anteeksi rakas ja suutele ja hala3872Esprit hoitokdit Varkaudessa?
Asun keskisuomessa ja käyn satunnaisesti äitini luona Varkaudessa. Äitin tarvitsee kohta hoitajan kotiin tai hoitokodin103863