11

I am trying to convert string to File object in javascript but I get an error.

my code:

 var contents = fs.readFileSync('./dmv_file_reader.txt').toString()

 var  readerfile1 = new File([""], contents);

(i have to use contents as file and not as string)

and my output is :

ReferenceError: File is not defined
    at d:\Workspace\DMV\dist\win-ia32-unpacked\resources\app.asar\main.js:67:32
    at process._tickCallback (internal/process/next_tick.js:103:7)

any solution some1?

7
  • Seems that the File object is not defined... Might have to require something from a module? Commented Nov 29, 2016 at 15:34
  • 1
    There is no File object in node (assuming this is node since you're using fs). What are you trying to do with the file? Commented Nov 29, 2016 at 15:34
  • Have a look at: stackoverflow.com/questions/8390855/… ; Have you tried using the blob? Commented Nov 29, 2016 at 15:34
  • maybe : stackoverflow.com/questions/10654971/… Commented Nov 29, 2016 at 15:35
  • In my code i have this line: code reader.readAsArrayBuffer(changeEvent.target.files[0]); code and then i send it to a function that get 'ArrayBuffer'. as i see here this function convert 'File' to 'ArrayBuffer'. therefor i want to convert my 'String' to 'File' and then use this function above. Commented Nov 29, 2016 at 15:44

1 Answer 1

18

First you have to create blob from Javascript object and that blob object can be passed to File() constructor to create a File Object.Hope this helps.

 var contents = fs.readFileSync('./dmv_file_reader.txt').toString()
 var blob = new Blob([contents], { type: 'text/plain' });
 var file = new File([blob], "foo.txt", {type: "text/plain"});
Sign up to request clarification or add additional context in comments.

1 Comment

I think you can go straight to file by just having 'contents' where 'blob' is.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.