Actionscript 3.0 :: FileReference - Overwriting Text Files Bug?
Jan 11, 2009
I've been saving plain text files to the hard drive using FileReference.save and everything is working fine. However, instead of overwriting a file with the same name (as the dialogue box says it is going to), the new text is simply added to the end of the text file! I've even tried using a Byte array, but the same thing happens. Perhaps a Mac OS Flash Player bug?
I am uploading files, jpgs, pngs, gifs, using filereference ... no problems.
my concern is the validity of the files that a user might upload.
for instance, I took a .txt file, changed it's extension to .jpg, and filereference was able to upload it to my server ( furthermore my php script was able to create a copy of it, resize the copy, and save it also ).
I've built an audio player that is fed via an xml file. Users can use a 'previous' or 'next' button to select which track to listen to and then play it and this is all fine and works as it should. The problem I have is with the file reference class. I want users to be able to have the option of downloading the track. I can get this function to work once but once you download a track, choose another, then click the download button again I get the error message below:
I'm writing a webbased flash application to upload big files (up to 750MB) on a server using PHP (Version 4). For small files it will work, but for large one the upload process seems to freeze. The upload "freeze" at different times and loaded MegaBytes.
Once the first file is successfully uploaded and the data is returned from server (onUploadCompleteData), I begin to upload the second file from FileList. Here comes the funny - listeners onOpen, onProgress, onComplete are successfully invoked in Flash, the filereference is indeed the filereference of the second file, size matches. But the onUploadCompleteData is never invoked. I checked in IE HTTP Analyzer and there is a simply no outgoing data (0 bytes), even tho the request is made. So the file "finishes" uploading like nothing would have happened but actually it didn't upload at all.
I tried to add a 30 seconds delay between uploads and that works flawless till now. So I tried, 1 sec, 3, 5, 10... didn't work. I simply cannot let a 30 seconds delay between uploads.
ActionScript Code: public function upload(file:FileReference){ //IntervalManager.clearInterval(this, "uploadInterval"); <- added interval for testing, works with 30 secs
I'm going to implement a file uploading application using flex 3.5 and php. In the flex code I need to read the content of the uploaded file without calling the FileReference.load() method (Since it is a big issue when uploading large files). I checked many online articles and didn't find a way to do this in flex.access the content of this file without using FileReference.load() method?
I'm trying to load a local file using FileReference load(). It will load small files just fine, but when I try to load a file of around 4-80 megabytes the flash player will crash. I read the load method officially supports up to 100 megabytes.
Here is the exact class I'm using to test: ActionScript Code: import flash.events.Event; import flash.events.IOErrorEvent; import flash.events.ProgressEvent; import flash.net.FileReference; import flash.net.FileFilter [Code] .....
Can I develop a Flash AS3 download swf that will let a user select a location on their hard drive to download files to and then start the download of multiple files (in the same way I can do with upload)? Or should I zip all the multiple files first and download zipped files to local disk. My users will want to download potentially hundreds of images from a server to local disk so I dont want them to have to click save for each one. Will AS3 let me pass an array of filenames and store the location that the user originally chooses? I ask because this sounds like it would have been not allowed for security reasons.
I am trying to use the load method of FileReference object to load the data and use it to display a thumbnail of the selected image.However, after calling fr.load(), fr.data remains null.I'm using Flex Builder 3.0.2 on Windows 7 with Flex SDK 3.4 and Flash Player 10 Debug. If I evaluate fr.load() in Eclipse's watch variables list, I get an error reading "No such variable: load."
Can you use the FileReference.upload() function to upload files to Sharepoint or do I have to use the SP web services? This is without adding your own ASP.NET Web Services, just using the built in SP Web Services.
I am creating flash uploader and want to start 10 uploadings at time.But flash upload only 2 files on domain at time, other references wait for something.In IE with ActiveX Player limitation is about 6 files at time.Is there any ideas how to change this limitation? For uploading I need to use FileReference.upload without creating URLRequest object from file data.
I created a program that sends images to a server, use the browse function of a FileReference object to check the files when you click a button "send pictures. But I would like to open the program he ask for the files but do not know how.
Let me start by saying I have no intention of using php and I can't wait until flash cs5 comes out with its new read/write capabilities want to load and save XML files (stored on my local hard-drive) in AS3.I am using the FileReference class.Firstly I have noticed that when using FileReference.save if you replace an existing file instead of writing over the file data is appended to the end of the file. Can I make it so the file is overwritten (as it should be) or make it impossible for the user to save in such a situation.Secondly I want to load in text from an external file using FileReference.load I know that somehow you use FileReference.browse first to get it to work but I want to know exactly how to do it.I have looked for a tutorial about loading text in this manner and have not found one.
I want to overwrite a XML file on my localhost, I always geta error "Error #1088: "The markup in the document following theroot element must be well-formed."AS3:
function upload():void { trace("upload"); str1 = "<?xml version='1.0'
I have a for loop that attaches a new mc to the stage fills it with info from a database. I should be left with three mc's but not the case. only the last one shows up on the stage. I went thru it with the debugger and it is filling all those movieClips with data but, overwrites them when it goes back to the top of the for loop.
what do you do when a loop "overwrites" itself and only displays the last value?
Code: for ( var j:Number = 0; j < xml_array.length; j++ ) { //Set state movie clips' parentMC and mainBroadcaster and onRelease functions this ["state" + j + "_mc"].mainBroadcaster = this.mainBroadcaster;
[code]....
here is the code snippet for the loop; I've used this before in a previous project and it didn't have this problem.
I've created two custom classes to contain data for a web forum controller flash tool:
class postClass { public var post_id:Number; //plus some other variables like timestamp etc
[code]....
When I try to assign a new post to a user (by adding the post data to the postArray variable) I overwrite posts that I had already placed under other users. More specifically, if I'm posting the first post for User Y, I overwrite the first post for User X with the exact same data.I thought this was a reference vs. value passing error, but I tried to eliminate this by not copying the "postClass" objects, but assigning the data directly into the user's postArray array:
var userArray:Array = new Array(); function addNewUser(masterPostIndex,UserNumber) {
[code]....
This all seems to work fine until I try to write a new post for a second or third user. If I trace the contents of User X's posts, they immediately become identical to the content of User Y's posts, as soon as User Y's posts are added. Later, when User Z comes along, both User X and User Y's posts are overwritten. This code is kinda long, so I didn't want to post the whole thing - but I can post any parts you're interested in, of course.
This really 'feels' like a reference-passing error (arrays are all looking at the same location in memory), but I can't figure out what I'm doing wrong - I'm not making a postClass object and then pushing it onto the user's postArray (I tried that too, same result).
var newPost:postClass = new postClass(); //read and assign values to newPost userArray[userIndex].push(newPost); //
this is clearly passing the referenceI can see how the latter example would pass the reference to newPost to the user object, then when I change newPost in the next iteration (when user Y posts something), User X's data will change too. I tried to avoid this with the first set of code.
When I make changes to a Flex project and rerun the project, it seems that FlashBuilder4 rewrites my html wrapper that embeds the SWF. But I have additional javascript code in the html wrapper and don't want to keep losing my code. I had to re-write the code once and it was a pain in the neck.How do I stop it from re-writing the html. And the related question: how do I stop it from deleting the html during a clean?I basically need to exclude the html from its processing once it's been created the first time. P.S. I'm using Flash Builder 4, but I suppose it's the same in Flex Builder 3.
I wrote over my actionscript code, saved it and closed it. now i cant get the information back. Do you have any tips. Been writing for 2 weeks on it. Iknoow i should backup it :)
I have a movie clip called "play_btn". The timeline has 2 labels, "paused" & "playing" ... paused contains a movie clip called "playButton" and playing contains a movie clip called "pauseButton". playButton & pauseButton contain images of a pause button and a play button.I am trying to replace the playButton image using:
loadMovie("play.png", play_btn.playButton);
This works when the swf is first loaded but then if I do:
Can methods declared with a custom namespace be overwritten?
Code: // secret.as package { public namespace secret = "http://www.example.com/secret";
[Code].....
If I try the above I get "1004: Namespace was not found or is not a compile-time constant." If I remove override I get "VerifyError: Error #1053: Illegal override of test in Extended."