Penampil DBF untuk Ubuntu

9

Saya perlu membuka file dbf di Ubuntu 15 saya dan saya menemukan LibreOffice dapat melakukan ini. Tapi saya mengerti

Kesalahan Umum. Kesalahan input / output umum.

Apakah ada alat APA PUN atau alat perangkat lunak bawaan yang dapat membantu saya?

Daria
sumber
Kami tidak peduli jika terbuka di Windows.
Rinzwind
1
@Rinzwind Ya, dan itu akan membuat saya menjawab pertanyaan seperti "Apakah Anda mencoba membukanya di beberapa sistem / perangkat lunak lain?"
Daria
Bahkan jika itu adalah pertanyaan yang valid, itu hanya Ubuntu . Dan kami tidak mengharapkan pengguna menginstal Windows ;-)
Rinzwind
4
@Rinzwind Ini sebenarnya menunjukkan bahwa file tersebut (kemungkinan) valid.
Cthulhu

Jawaban:

13

Menurut LibreOffice Wiki Anda harus dapat membuka .dbffile dengan LibreOffice Base.

Jika Anda masih mengalami masalah ini, instal ulang LibreOffice:

sudo apt-get remove --purge libreoffice*
sudo apt-get clean
sudo apt-get autoremove
sudo apt-get install libreoffice

Anda juga dapat menggunakan dbviewuntuk membuka .dbffile (yang mungkin lebih sulit untuk digunakan daripada LibreOffice Base):

sudo apt-get install dbview

Rujuk ke halaman manual untuk informasi lebih lanjut tentang dbview.

hg8
sumber
2
Bagus! Saya kira saya tidak memiliki LibreOffice Base dan menginstal ulang membawanya) Juga dbview adalah konsol yang baik (karena saya sudah benar) aplikasi yang dapat membuat pratinjau file dbf dengan mudah. Terima kasih.
Daria
3
Karena LibreOffice Base tidak diinstal secara default di Ubuntu, Anda mungkin ingin memulai dengan memeriksa apakah itu benar-benar ada.
leo
3

Untuk mengedit file .dbf kecil yang sangat sederhana, Anda juga dapat menggunakan GTK DBF Editor

Untuk menginstalnya di Ubuntu 12.04, saya pertama-tama harus menginstal dependensi ini:

sudo apt-get install libglade2-0:i386

Kemudian saya dapat menginstal file .deb yang diunduh dengan

sudo dpkg -i Downloads/gtkdbfeditor_1.0.4-7_i386.deb

Memperbarui:

Di Ubuntu 16.04, dengan instalasi default LibreOffice, saya juga harus

sudo apt install libreoffice-base

Kemudian, file .dbf dapat dibuka di LibreOffice Calc, dan juga disimpan sebagai .dbf.

mivk
sumber
2

Saya telah menemukan cara terbaik untuk menangani file .dbf adalah dengan menggunakan PHP untuk mengonversinya menjadi file .csv:

<?php

set_time_limit( 24192000 );
ini_set( 'memory_limit', '-1' );

$files = glob( '/media/d/Data2/files/*.DBF' );
foreach( $files as $file )
{
    echo "Processing: $file\n";
    $fileParts = explode( '/', $file );
    $endPart = $fileParts[key( array_slice( $fileParts, -1, 1, true ) )];
    $csvFile = preg_replace( '~\.[a-z]+$~i', '.csv', $endPart );

    if( !$dbf = dbase_open( $file, 0 ) ) die( "Could not connect to: $file" );
    $num_rec = dbase_numrecords( $dbf );
    $num_fields = dbase_numfields( $dbf );

    $fields = array();
    $out = '';

    for( $i = 1; $i <= $num_rec; $i++ )
    {
        $row = @dbase_get_record_with_names( $dbf, $i );
        $firstKey = key( array_slice( $row, 0, 1, true ) );
        foreach( $row as $key => $val )
        {
            if( $key == 'deleted' ) continue;
            if( $firstKey != $key ) $out .= ';';
            $out .= trim( $val );
        }
        $out .= "\n";
    }

    file_put_contents( $csvFile, $out );
}

?>

Kemudian gunakan MySQL untuk mengimpor CSV:

LOAD DATA INFILE "/media/d/Data2/files/ZACATECAS.csv" INTO TABLE tbl FIELDS TERMINATED BY ";" ENCLOSED BY '"' LINES TERMINATED BY "\n";
Kohjah Breese
sumber