2016-11-22 16 views
0

以下のようなバッチファイルを作成しましたが、コマンドプロンプトでは表示されません。evevエコーオフが使用されます。バッチファイルの実行中にコマンドプロンプトにhideコマンドを表示

csvファイルやその他のファイルをコマンドプロンプトに表示したくありません。 コマンドプロンプトでパスワードを使用して警告が表示されているので、安全でない、 私を助けてください。

このバッチファイルコマンドプロンプトで実行WのP.xls

@echo off 
    echo %1 
    echo SET @bdate := "%1"; > a.sql 
    copy /b a.sql + bdate.sql out.sql 
    mysql --user="root" --database="abc" --password="123" < "D:\New Folder\out.sql" 
    java -jar csvtoxls.jar 
    del out.sql 
    del ws.csv 
    rename "W P.xls" "W P"%1".xls" 

出力ファイルとjarファイル インポートにjava.io.DataInputStreamを作り出します。 import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList;

import org.apache.poi.hssf.usermodel.HSSFCell; 
import org.apache.poi.hssf.usermodel.HSSFRow; 
import org.apache.poi.hssf.usermodel.HSSFSheet; 
import org.apache.poi.hssf.usermodel.HSSFWorkbook; 

public class csv2 { 
    @SuppressWarnings("deprecation") 
    public static void main(String args[]) throws IOException { 
     ArrayList<ArrayList<String>> allRowAndColData = null; 
     ArrayList<String> oneRowData = null; 
     String fName = "C:\\New folder\\ws.csv"; 
     String currentLine; 
     FileInputStream fis = new FileInputStream(fName); 
     DataInputStream myInput = new DataInputStream(fis); 
     int i = 0; 
     allRowAndColData = new ArrayList<ArrayList<String>>(); 
     while ((currentLine=myInput.readLine()) != null) { 
      oneRowData = new ArrayList<String>(); 
      String oneRowArray[] = currentLine.split(";"); 
      for (int j = 0; j < oneRowArray.length; j++) { 
       oneRowData.add(oneRowArray[j]); 
      } 
      allRowAndColData.add(oneRowData); 
      System.out.println(); 
      i++; 
     } 

    try { 
     HSSFWorkbook workBook = new HSSFWorkbook(); 
     HSSFSheet sheet = workBook.createSheet("sheet1"); 
     for (int i1 = 0; i1 < allRowAndColData.size(); i1++) { 
      ArrayList<?> ardata = (ArrayList<?>) allRowAndColData.get(i1); 
      HSSFRow row = sheet.createRow((short) 0 + i1); 
      for (int k = 0; k < ardata.size(); k++) { 
       System.out.print(ardata.get(k)); 
       HSSFCell cell = row.createCell((short) k); 
       cell.setCellValue(ardata.get(k).toString()); 
      } 
      System.out.println(); 
     } 
     FileOutputStream fileOutputStream = new FileOutputStream("C:\\New folder\\W P.xls"); 
     workBook.write(fileOutputStream); 
     fileOutputStream.close(); 
    } catch (Exception ex) { 
    } 
} 
} 
+2

ここでJavaの問題は何ですか? –

+0

javaまたはjarファイルに問題はありませんが、mysql --user = "root" --database = "abc" --password = "123" <"D:\ New Folder \ out.sql"コマンドプロンプトでパスワードを使用することは厄介です – Kadinadvani

+0

あなたのコードを入れてください? –

答えて

0

非表示にするコマンドに@記号を追加します。

出力を表示しない場合は、コマンドの前に> nulも追加します。

+0

この行を非表示にするにはどうすればよいですか - mysql --user = "root" --database = "abc" --password = "123" <"D:\ New Folder \ out.sql" – Kadinadvani

+0

次のように試してください:@mysql --user = "root" - -database = "abc" --password = "123" <"D:\ New Folder \ out.sql" –

+1

スクリプトの最上部にある '@echo off 'は暗黙の' @ 'をすべての行に追加します。不要。しかし、 '> nul 'はうまくいくはずです。 – SomethingDark

関連する問題