1

まず第一に、私は iMacros スクリプト ライターです。これは、ファイルを書き込むための Java 関数です (完全ではありませんが、アイデアは得られます)。

 bufferedWriter = new BufferedWriter(new FileWriter(filename));

            //Start writing to the output stream
            bufferedWriter.write("Writing line one to file");

以下は、上記の関数と同じタスクを実行するために JavaScript で使用される Java 関数であり、iMacros でその .js ファイルを実行します。魅力のように機能します。

//Function to write the file
function writeFile(filename, data)
{
   try
   { 

      //write the data

      out = new java.io.BufferedWriter(new java.io.FileWriter(filename, true));
      out.newLine();
      out.write(data);
      out.close();
      out=null;
   }
   catch(e)   //catch and report any errors
   {
      alert(""+e);
   }
}

ハードドライブの場所にファイルとフォルダーを作成するJava関数が必要になり、これを見つけました。

パッケージ com.mkyong.file;

java.io.File をインポートします。import java.io.IOException;

public class CreateFileExample 
{
    public static void main( String[] args )
    {   
        try {

          File file = new File("c:\\newfile.txt");

          if (file.createNewFile()){
            System.out.println("File is created!");
          }else{
            System.out.println("File already exists.");
          }

        } catch (IOException e) {
          e.printStackTrace();
    }
    }
}

しかし今、フォルダーと空のファイル (.txt .csv などのさまざまな拡張子を持つ) を作成する Java 関数が必要であり、関数は JavaScript で動作します。

上記の 2 つの例からガイドラインを教えてもらえますか? Java で関数を作成し、JavaScript で実行するにはどうすればよいですか?

4

2 に答える 2

2

質問を完全に理解しているとは言いませんが、これはいくつかのディレクトリが存在することを確認し、その中にランダムなファイルを作成する方法です:

// make the dir and ensure the entire path exists
File destinationDir = new File("c:\\whereever\you\want\that\file\to\land").mkdirs();
// make some file in that directory
File file = new File(destinationDir,"whateverfilename.whateverextension");
// continue with your code
if (file.createNewFile()){
    System.out.println("File is created!");
}else{
    System.out.println("File already exists.");
}
于 2012-12-07T00:37:59.517 に答える
2

この関数は iMacros .js ファイルで使用されます。JavaScript で呼び出される Java メソッドです。

createFile("C:\\testingfolder","test.csv");

function createFile(folder,file)
{

destinationDir = new java.io.File(folder).mkdirs();
file = new java.io.File(folder,file);
file.createNewFile();
}

関数はフォルダーを作成し、その中にファイルを作成します。

于 2012-12-07T00:59:39.620 に答える