CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: Varioflex con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 14 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 35 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 4 su 4
Discussione:

Ricerca binaria in file binari

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Oct 2010
    Messaggi
    3

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Ricerca binaria in file binari

    Ciao a tutti!

    Sono nuovo del forum e della programmazione per Android.

    Sto realizzando applicazione per visualizzare elenchi documenti e relativi testi.
    Nella preparazione delle prime activity (e relativi intent) e nell'utilizzo di dati su database sqlite non ho avuto problemi.
    I Titoli e i testi dei documenti invece sono su pesantissimi file binari. E qui sono andato in crisi.
    Ecco le mie domande:
    1) Come inserisco i file nell'applicazione? Nella cartella Raw e li gestisco come risorse oppure direttamente nel file system (e in questo caso, come?)
    2) Come faccio ad implementare la ricerca binaria in tale contesto?
    3) Dai file di questo tipo non posso farne a meno. Conoscete altre tecniche e per estrarre dati in maniera non "pesante" per il sistema?

    Grazie
    Ciao a tutti

  2.  
  3. #2
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Ma i file verranno staticamente inseriti nella app o potranno essere caricati dall'utente?
    Per file binario cosa intendi? Quale è il formato? A questo punto, se vuoi estrarre dati da loro devi avere una classe JAVA che li sappia leggere e questo dipende dalla loro natura. Non è molto meglio che nome e descrizione siano messi a manina dall'utente e collegati al file?
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  4. #3
    Baby Droid


    Registrato dal
    Oct 2010
    Messaggi
    3

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Quote Originariamente inviato da Cymon Visualizza il messaggio
    Ma i file verranno staticamente inseriti nella app o potranno essere caricati dall'utente?
    Per file binario cosa intendi? Quale è il formato? A questo punto, se vuoi estrarre dati da loro devi avere una classe JAVA che li sappia leggere e questo dipende dalla loro natura. Non è molto meglio che nome e descrizione siano messi a manina dall'utente e collegati al file?
    File inseriti staticamente nella app.
    In teoria, avevo già implementato funzione che estraeva i dati (sono long di 4 byte) e li metteva in apposito vettore long[], ma per file molto grossi si rischia di bloccare tutto secondo me. Per questo pensavo di "navigare" file con ricerca binaria per trovare in poco tempo valore di mio interesse nel file. E grazie a quello risalire a titolo e testo documento in altri file.
    Secondo te è sbagliato l'approccio con file e dovrei trovare altre fonti?

  5. #4
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da roccia80 Visualizza il messaggio
    File inseriti staticamente nella app.
    In teoria, avevo già implementato funzione che estraeva i dati (sono long di 4 byte) e li metteva in apposito vettore long[], ma per file molto grossi si rischia di bloccare tutto secondo me. Per questo pensavo di "navigare" file con ricerca binaria per trovare in poco tempo valore di mio interesse nel file. E grazie a quello risalire a titolo e testo documento in altri file.
    Secondo te è sbagliato l'approccio con file e dovrei trovare altre fonti?
    Dipende ovviamente dal tipo di dati che stai trattando. Se parliamo di testi è ovvio che, mettendoli in binario, guadagni probabilmente in dimensioni, ma il tempo di decode necessario lo vai a perdere in efficienza. Se ti interessa una certa responsività forse sarebbe meglio tenerli in file di testo.
    Se poi nome e descrizione sono molto usati probabilmente sarebbe effettivamente bene metterli in un piccolo DB in cui poi conservare anche il riferimento ai testi completi. Potresti addirittura pensare di passare su DB tutto il testo, ma a quel punto la ricerca sarebbe tutta a carico di sqlite... forse più reattiva che da filesystem, ma non so se esistono sviluppi ad hoc per averla ottimale.
    In generale il tema della ricerca è piuttosto spinoso, ti consiglio di esaminare delle classi java già fatte che ti permettano di fare un po' di indicizzazione e altre attività del genere, perché gli studi sull'argomento sono vasti e complessi, ma fortunatamente anche il già presente in giro.
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy