Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    87

    [c#] aprire e modificare file con codifica hex

    dopo un pò di tempo di nullafacenza torno a programmare in c#. leggendo "fondamenti di C++" adesso capisco molto di più sulle classi, le funzioni etc etc (pensate che so creare una classe ) ma vengo al punto....
    il programma che sto facendo deve aprire un file DDS (possibilmente con "codifica" esadecimale), mettere i dati in un oggetto(non so se un array o cos'altro), poi mettere i dati dell'array in un altro file in una determinata posizione, sovrascrivendo, non aggiungendo.

    come fare?
    grazie in anticipo a tutti quelli che mi potranno dare un aiuto.

  2. #2
    Quale delle cose che hai detto non sei in grado di fare?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    87
    prima di tutto non so in che tipo di oggetto mantenere i dati hex (array o altre cose). secondo non so come leggere file con "codifica" hex (con file di testo ci riesco). e non so scrivere sempre in codifica hex in una data posizione di un altro file

  4. #4
    Originariamente inviato da hornobster
    prima di tutto non so in che tipo di oggetto mantenere i dati hex (array o altre cose).
    Puoi usare un array di Byte.
    secondo non so come leggere file con "codifica" hex (con file di testo ci riesco). e non so scrivere sempre in codifica hex in una data posizione di un altro file
    "Hex" non è una codifica, ma è il modo di visualizzare file di qualunque genere negli editor esadecimali. Per maneggiare file binari ti basta usare i normali stream .NET.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    87
    qualche link per studiarmeli bene bene? poi non rompo più(forse) XD

  6. #6
    La solita MSDN; il metodo che ti interessa in particolare è il Read.
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    87
    grazie. proverò a far qualcosa. se ho problemi chiederò in questo topic

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    87
    ok eccone uno di problema. riesco a leggere i file(anche se non so come leggerli in hex) e metterli in un buffer byte[]. però non riesco a scrivere il contenuto del buffer in un altro file. uso:
    codice:
                FileStream fs = File.OpenWrite(fileN);
                byte[] bytes = new byte[fs.Length];
                int b=0;
                for (int i = 0; i < fs.Length; i++)
                {
                    fs.Write(bytes, b, (int)fs.Length);
                }
                fs.Close();
                MessageBox.Show("Finish");
    il file lo crea però è vuoto. perchè?

    che stupido che sono... non scrive nulla perchè ho creato un buffer nuovo in questa funzione.

  9. #9
    Originariamente inviato da hornobster
    anche se non so come leggerli in hex
    I file non si *leggono* in hex, quando leggi un file tu leggi semplicemente i byte che contiene. Al massimo puoi rappresentarne il contenuto in esadecimale (usando due cifre esadecimali per byte).
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    87
    ah ecco. ho letto che il value di un byte va da 0 a 255, quindi in hex va da 0x0 a 0xFF. ok grazie mille.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.