データベースをCSVファイルとして保存するときに、最後の3列が1つまたは2つに分類されるのはなぜですか?

Scooltr

データベースをCSVファイルとして保存するときに、最後の3列が1つまたは2つに分類されるのはなぜですか?

最後の3つの列を除いて、ほとんどすべての列が正しく保存されました

ここに問題があります

コードは次のとおりです。

//export DB to CSV file
    public static String currentFilePathOfsavingCSVtoSD;
    public static void exportDBtoCSVsaveonSD() {

        String currentDateString = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss").format(Calendar.getInstance().getTime());
        File dbFile = new File("/data/data/" + "com.exactly.scooltr.inventoryAppBasic" + "/databases/" + DATABASE_NAME);
        File exportDir = new File(Environment.getExternalStorageDirectory(), "/" + main_folder+ "/CSV_files/");
        if (!exportDir.exists()) {
            exportDir.mkdirs();
        }

        File file = new File(exportDir, "("+currentDateString+")"+"simpleinventorycsv.csv");
        currentFilePathOfsavingCSVtoSD = file.toString();
        try {
            file.createNewFile();
            CSVWriter csvWrite = new CSVWriter(new FileWriter(file));
            SQLiteDatabase db = mDbHelper.getReadableDatabase();
            Cursor curCSV = db.rawQuery("SELECT " + ProductContract.ProductEntry.COLUMN_PRODUCT_NAME+", "+ProductContract.ProductEntry.COLUMN_PRODUCT_PRICE+", "+
                            ProductContract.ProductEntry.COLUMN_PRODUCT_QUANTITY+", "+ProductContract.ProductEntry.COLUMN_PRODUCT_SOLD+", "+
                            ProductContract.ProductEntry.COLUMN_PRODUCT_BARCODE+", "+ProductContract.ProductEntry.COLUMN_PRODUCT_LOCATION+", "+
                            ProductContract.ProductEntry.COLUMN_PRODUCT_CATEGORY+", "+ProductContract.ProductEntry.COLUMN_PRODUCT_NOTE +
                             " FROM " + ProductContract.ProductEntry.TABLE_NAME , null);
            csvWrite.writeNext(curCSV.getColumnNames());
            while (curCSV.moveToNext()) {
                //Columns I want to export
                String arrStr[] = {curCSV.getString(0),curCSV.getString(1), curCSV.getString(2),curCSV.getString(3),curCSV.getString(4),curCSV.getString(5)+curCSV.getString(6)+curCSV.getString(7)};
                csvWrite.writeNext(arrStr);
            }
            successSavingAsCSV=true;
            csvWrite.close();
            curCSV.close();
        } catch (Exception sqlEx) {
            Log.e("ProductProvider", sqlEx.getMessage(), sqlEx);
        }
    }


}
MikeT

コードは、最後の3つの列を個別の引数として扱うのでは+なく、を使用,て連結しているため、最後の3つの列を渡します。

すなわち:-

String arrStr[] = {
    curCSV.getString(0),
    curCSV.getString(1), 
    curCSV.getString(2),
    curCSV.getString(3),
    curCSV.getString(4),
    curCSV.getString(5)+curCSV.getString(6)+curCSV.getString(7)
};

する必要があります:-

String arrStr[] = {
    curCSV.getString(0),
    curCSV.getString(1), 
    curCSV.getString(2),
    curCSV.getString(3),
    curCSV.getString(4),
    curCSV.getString(5), //<<<< comma instead of +
    curCSV.getString(6), //<<<< comma instead of +
    curCSV.getString(7)
};

ただし、以下は、ハードコードされた列インデックスオフセットとは対照的に、計算されたオフセットを使用するため、はるかに回復力があります:-

String arrStr[] = {
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_NAME)),
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_PRICE)), 
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_QUANTITY)),
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_SOLD)),
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_BARCODE)),
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_LOCATION)), //<<<< comma instead of +
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_CATEGORY)), //<<<< comma instead of +
    curCSV.getString(curCSV.getColumnIndex(ProductContract.ProductEntry.COLUMN_PRODUCT_NOTE))
};

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

[送信]をクリックしたときに1つのフォームアクションで、1つの列の値が異なる2つのエントリがデータベースに挿入される可能性はありますか(Codeigniter)

分類Dev

useridをuserid ++と一緒に保存することはできますが、CSVファイルの3つの「デフォルトユーザー」の最後のユーザーがuseridd ++を取得しています。

分類Dev

Sparkがデータフレームをcsv形式で保存しているときに複数のcsvファイルを作成するのはなぜですか?

分類Dev

2 つのデータセットを結合してテキスト ファイルに保存すると、NullPointerException で失敗するのはなぜですか?

分類Dev

pngファイルがpdfとしてデータベースに更新されるのはなぜですか?それを修正する方法は?

分類Dev

データベースに.csvをインポートするときに、「最後に予期された列の後の追加データ」を取得するのはなぜですか?

分類Dev

グループ化するときに、1つのファイルの最長の「文字列」に基づいてmysqlデータベースからレコードを選択するにはどうすればよいですか?

分類Dev

TensorFlow、モデルを保存した後に3つのファイルがあるのはなぜですか?

分類Dev

非常に大きな(> 100,000行)JSONファイルからノードごとに2つのデータフィールド(1つのスカラーと1つの配列)を抽出するにはどうすればよいですか?

分類Dev

データベースの接続が異なる2つ(またはそれ以上)の構成ファイルがある場合、移行を介してデータベースを更新するにはどうすればよいですか?

分類Dev

「ls-lt」を使用してリストされたときに、同じタイムスタンプを持つファイルがアルファベット順にソートされないのはなぜですか?

分類Dev

RuntimeError:モジュールはデバイスcuda:1(device_ids [0])にパラメーターとバッファーを持っている必要がありますが、デバイス:cuda:2でそれらの1つが見つかりました

分類Dev

ストリーム#1でコーデックpcm_alawのタグが見つかりませんでした。ffmpegを使用して2つのファイルを連結するときに、コーデックは現在コンテナでサポートされていません。

分類Dev

ストレージタイプがデータベースに保存されていないのに、FileFieldのストレージ属性を変更すると、djangoが移行ファイルを作成するのはなぜですか?

分類Dev

ファイルパス名をデータベースに保存しようとすると、なぜnullが返されるのですか?

分類Dev

WordPressの$ wpdbを使用してデータベース行を取得するときにint列が文字列として返されるのはなぜですか?

分類Dev

パンダを使用してWebサイトからテーブルをスクレイプすると、中央の列がスキップされ、最初の2つと最後の2つだけが印刷されるのはなぜですか。

分類Dev

1つのファイルにマージするときにファイルデータが増加するのはなぜですか?

分類Dev

PythonでDictwriterを使用して出力すると、CSVファイルに各データ行の間に空白行が含まれるのはなぜですか

分類Dev

変換されたメールアドレスを保存するときにデータベースにnullがあるのはなぜですか?

分類Dev

.csvデータの一部ではない行が最後にある場合、Univocity Parsersはどのようにして.csvファイルのデータを正しく読み取ることができますか?

分類Dev

マッパーとリデューサーの数が1に設定されているのに、ハイブが2つのパーツファイルをhdfsに書き込むのはなぜですか

分類Dev

Windowsでファイルをコピーまたは移動するときにタイムスタンプが変更されるのはなぜですか?

分類Dev

削除せずに検索してもファイルを見つけることができなかったのに、-deleteを使用して検索すると/ save /ディレクトリ内のファイルが消去されたのはなぜですか?

分類Dev

SQLiteデータベースのテーブルに3つ以上の列を作成しようとすると、列が存在しないというエラーが表示されるのはなぜですか?

分類Dev

内部ストレージのテキストファイルに保存されたデータを見つけることができません、内部ストレージのAndroidStudioにファイルを保存する方法は?

分類Dev

このコードが表示されないのはなぜですかエラー:存在しないファイルによってeがスローされたときにファイルが見つかりませんでしたか?

分類Dev

ページングファイルがオペレーティングシステムドライブから分離されているときに、Windows 7がクラッシュの詳細を記録しないのはなぜですか?これについて何かできますか?

分類Dev

データベースが削除されたときに、SQL Serverはすべてのデータベースファイルを削除しませんか?

Related 関連記事

  1. 1

    [送信]をクリックしたときに1つのフォームアクションで、1つの列の値が異なる2つのエントリがデータベースに挿入される可能性はありますか(Codeigniter)

  2. 2

    useridをuserid ++と一緒に保存することはできますが、CSVファイルの3つの「デフォルトユーザー」の最後のユーザーがuseridd ++を取得しています。

  3. 3

    Sparkがデータフレームをcsv形式で保存しているときに複数のcsvファイルを作成するのはなぜですか?

  4. 4

    2 つのデータセットを結合してテキスト ファイルに保存すると、NullPointerException で失敗するのはなぜですか?

  5. 5

    pngファイルがpdfとしてデータベースに更新されるのはなぜですか?それを修正する方法は?

  6. 6

    データベースに.csvをインポートするときに、「最後に予期された列の後の追加データ」を取得するのはなぜですか?

  7. 7

    グループ化するときに、1つのファイルの最長の「文字列」に基づいてmysqlデータベースからレコードを選択するにはどうすればよいですか?

  8. 8

    TensorFlow、モデルを保存した後に3つのファイルがあるのはなぜですか?

  9. 9

    非常に大きな(> 100,000行)JSONファイルからノードごとに2つのデータフィールド(1つのスカラーと1つの配列)を抽出するにはどうすればよいですか?

  10. 10

    データベースの接続が異なる2つ(またはそれ以上)の構成ファイルがある場合、移行を介してデータベースを更新するにはどうすればよいですか?

  11. 11

    「ls-lt」を使用してリストされたときに、同じタイムスタンプを持つファイルがアルファベット順にソートされないのはなぜですか?

  12. 12

    RuntimeError:モジュールはデバイスcuda:1(device_ids [0])にパラメーターとバッファーを持っている必要がありますが、デバイス:cuda:2でそれらの1つが見つかりました

  13. 13

    ストリーム#1でコーデックpcm_alawのタグが見つかりませんでした。ffmpegを使用して2つのファイルを連結するときに、コーデックは現在コンテナでサポートされていません。

  14. 14

    ストレージタイプがデータベースに保存されていないのに、FileFieldのストレージ属性を変更すると、djangoが移行ファイルを作成するのはなぜですか?

  15. 15

    ファイルパス名をデータベースに保存しようとすると、なぜnullが返されるのですか?

  16. 16

    WordPressの$ wpdbを使用してデータベース行を取得するときにint列が文字列として返されるのはなぜですか?

  17. 17

    パンダを使用してWebサイトからテーブルをスクレイプすると、中央の列がスキップされ、最初の2つと最後の2つだけが印刷されるのはなぜですか。

  18. 18

    1つのファイルにマージするときにファイルデータが増加するのはなぜですか?

  19. 19

    PythonでDictwriterを使用して出力すると、CSVファイルに各データ行の間に空白行が含まれるのはなぜですか

  20. 20

    変換されたメールアドレスを保存するときにデータベースにnullがあるのはなぜですか?

  21. 21

    .csvデータの一部ではない行が最後にある場合、Univocity Parsersはどのようにして.csvファイルのデータを正しく読み取ることができますか?

  22. 22

    マッパーとリデューサーの数が1に設定されているのに、ハイブが2つのパーツファイルをhdfsに書き込むのはなぜですか

  23. 23

    Windowsでファイルをコピーまたは移動するときにタイムスタンプが変更されるのはなぜですか?

  24. 24

    削除せずに検索してもファイルを見つけることができなかったのに、-deleteを使用して検索すると/ save /ディレクトリ内のファイルが消去されたのはなぜですか?

  25. 25

    SQLiteデータベースのテーブルに3つ以上の列を作成しようとすると、列が存在しないというエラーが表示されるのはなぜですか?

  26. 26

    内部ストレージのテキストファイルに保存されたデータを見つけることができません、内部ストレージのAndroidStudioにファイルを保存する方法は?

  27. 27

    このコードが表示されないのはなぜですかエラー:存在しないファイルによってeがスローされたときにファイルが見つかりませんでしたか?

  28. 28

    ページングファイルがオペレーティングシステムドライブから分離されているときに、Windows 7がクラッシュの詳細を記録しないのはなぜですか?これについて何かできますか?

  29. 29

    データベースが削除されたときに、SQL Serverはすべてのデータベースファイルを削除しませんか?

ホットタグ

アーカイブ