private function GetFile():void{
var getFileContent:FileStream = new FileStream();
var directory:File = new File(filePath);
var tempPath:String = new String();
if (directory != null)
{
getFileContent.open(directory, FileMode.READ);
var getContent:String = getFileContent.readMultiByte(getFileContent.bytesAvailable,"gb2312");
var tempStr:String = "Share=";
var getString:String = "";
var getPath:String = "";
for (var j:int = 0;j<2;j++)
{
getString = getContent.substring(getContent.indexOf(tempStr));
getPath = getString.substring(0,getString.indexOf("/n"));
getPath=getPath.substring(0,getPath.lastIndexOf("/r"));
getPath = getPath.substring(6);
if (getPath != "")
break;
else
tempStr = "share=";
}
if (getPath == "" && j == 2)
{
myTimer.stop();
Alert.yesLabel= "是";
Alert.show("目录或文件不存在!请检查C://WINDOWS//abc.ini下“Share=”的路径,并且设置“share=”为“share=”或“Share=”","提示",Alert.YES,this,doAlertExit);
return;
}
tempPath = getPath + "/DATA";
tempPath = tempPath.replace(////g,"////");
var dir:File = new File(tempPath);
var contents:Array = dir.getDirectoryListing();
var isExist:Boolean = false;
for (var i:uint = 0; i < contents.length; i++)
{
directory = directory.resolvePath(contents[i].name); // name of file to read
if (contents[i].name == "eBoard.txt")
{
isExist = true;
break;
}
}
if (isExist == true)
{
getPath += "/DATA//eBoard.txt";
getPath = getPath.replace(////g,"////");
var file:File = new File(getPath);
var inStream:FileStream = new FileStream();
inStream.open(file, FileMode.READ);
txt.text = inStream.readMultiByte(inStream.bytesAvailable,"gb2312"); //这里为转化成汉字的格式,如果txt的字符编码为UTF-8,则这里就修改readUTF,现在这里的txt是ASCII码
inStream.close();
}
else
{
Alert.yesLabel= "是";
Alert.show("目录或文件不存在!请在" + tempPath + "下建立文件eBoard.txt","提示",Alert.YES,this,doAlertExit);
}
getFileContent.close();
}
}
以上代码是,找到固定盘符下某个文件,读其内容中的某一部分,这部分内容为一个文件路径,再找到这个文件,读其内容,包含了文件读取,字符串匹配,等内容
-----------------------------------------
写文件:
private function outFile(fileName:String, data:ByteArray):void
{
var outFile:File = File.desktopDirectory; // dest folder is desktop
outFile = outFile.resolvePath(fileName); // name of file to write
var outStream:FileStream = new FileStream();
// open output file stream in WRITE mode
outStream.open(outFile, FileMode.WRITE);
// write out the file
outStream.writeBytes(data, 0, data.length);
// close it
outStream.close();