My error is the ever popular ::::Error using fprintf Invalid file identifier. Use fopen to generate a valid file identifier. Error in pro1 (line 7) fprintf(fileID,'edges\t initial_nodes\t nodes_after_reduction\t difference \n')
    5 views (last 30 days)
  
       Show older comments
    
if g == 1 
        fileID = fopen('output2\cycle_graph_output.txt','w')%Creates a output text file in folder output2
        fprintf(fileID,'edges\t initial_nodes\t nodes_after_reduction\t difference \n') 
        myfolderinfo = dir('cycle_graph') ; %lists folder contents   
        N = length(myfolderinfo) ; 
so the code is working perfectly when i'm using the Matlab in my local system.
But its generating the error when i tried to run it on Matlab online. What changes can i make to make it work on Matlab online
0 Comments
Answers (1)
  Walter Roberson
      
      
 on 16 Mar 2020
        MATLAB Online does not use MS Windows; it uses Linux. The directory separator is / not \
MS Windows is happy to use / instead of \ so you should just change the \ to /
Better yet, use fullfile()
... And of course make sure you have a directory named output2 relative to where you are running the code.
6 Comments
  Steven Lord
    
      
 on 19 Mar 2020
				Call fopen with two outputs and show us both the output values that get displayed when you run that code in MATLAB Online.
  Walter Roberson
      
      
 on 19 Mar 2020
				fileID = fopen('cycle_graph_output4.txt','w')%Creates a output text file
would be expected to display a number as well as creating the output file. If the number is negative then file creation failed; if the number is positive then file creation worked.
On MATLAB online, what shows up if you execute this command:
!pwd; ls -ld .; whoami
Note that the ! at the beginning is part of the command.
See Also
Categories
				Find more on Low-Level File I/O in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

