Bytearray to string

Hi everyone,
If i have an array of bytes, how can i transform it back into a string, i mean transform the ASCII byte values back into characters so i get back the original string. Is there a method that can transform all the bytestream at once or i have to do it one byte every time?

Did you ever have a look at the String constructors in the API docs?

Similar Messages

  • Convert ByteArray to String Problem on Linux

    Hi there,
    i've got a problem converting a bytearray to string with this code:
    new String(byteArray, "ASCII");the Problem is that java doesn't print the whole string that is passed through the array because there are zeros in the byte array...
    is there any solution for this?
    as i mentioned i'm using ubuntu linux with sun java 6 1.6.0.06
    greets
    xtremliep

    it's just a bytearray which comes from a gateway to an ibm mainframe...
    on the mainframe runs a cobol programm which uses ebcdic code...
    the gateway converts it to ascii and java on win platforms shows a cube sign on the output...
    now i want to get it work on linux too...
    maybe i had to iterate trough the byte array and transform the zero into 32 which stands for space...
    but i think that is not a nice way....
    Edited by: xtremliep on May 5, 2008 10:56 PM

  • ByteArray to String and String to ByteArray  error at readUTF from datainpu

    hi everybody this is my first post I hope I can find the help I need I have been doing some research and couldnt find the solution thanks in advanced
    The Objective:
    im building a client server application with java and I need to send a response from the server to the client via Socket
    so the response is like this : <Signal : ByteArray> where Signal is a String so the client can Identify the Type of response
    and the ByteArray is an Array of bytes containing the Information I need
    The Problem:
    I have an Array of bytes containing the info to send and I need to pass this byte[] to a String add some String that let me Identify the data in the client side then remove the identifier in the client side and convert the resulting String back to an array of bytes this doesnt work
    The Code:
    Server Side (Creating the Byte Array):
    public byte[] createData(){
                    ByteArrayOutputStream baos = new ByteArrayOutputStream();
                    DataOutputStream dos = new DataOutputStream(baos);               
                    dos.writeUTF(requestedFile.getName());
                    dos.flush();
                    byte[] data = baos.toByteArray();
                    return data;
    }Server Side (Converting the byte[] to String and Add some Identifier)
    byte[] data= createData(); //Obtain the data  in a byte[]
    String response = new String(data);  //Convert the Data to String
    String Identifier= "14"; // to identify in the client side the data received this will be removed later
    response = Identifier+response;  // add the identifier to the String
    sendToClient( response.getBytes() );  //obtain bytes from the complete Response and send them to clientClient Side ( Receive the response that is a byte array containing the identifier plus the info <Identifier : info> )
                int index=response.indexOf(":")+1;  //find the index of the : so i can delete the identifier
                response=response.substring(index); // delete the identifier
                byte[] data = response.getBytes(); // obtains the bytes for the info ONLY cause the string no longer has identif
                receiveData ( data ); // send the data to be read by this method Client Side (Receive the Info sent from the server and read it)
                public void receiveData ( byte[] data ) {
                   ByteArrayInputStream bais = new ByteArrayInputStream ( data );
                   DataInputStream dis= new DataInputStream ( bais );
                   setTotalSize ( dis.readUTF( ) ); // here is the error  it catches an EndOfFileException without read the info
                }im tried sending other values like long and int and i was able to read them but the problem is with the Strings at the ReadUTF()
    Im tried to be the most clear as possible please help me this is driving me nuts
    and I would really appreciatte all your comments thanks

    lemaniak wrote:
    The Objective:
    im building a client server application with java and I need to send a response from the server to the client via Socket
    so the response is like this : <Signal : ByteArray> where Signal is a String so the client can Identify the Type of response
    and the ByteArray is an Array of bytes containing the Information I need
    The Problem:
    I have an Array of bytes containing the info to send and I need to pass this byte[] to a String add some String that let me Identify the data in the client side then remove the identifier in the client side and convert the resulting String back to an array of bytes this doesnt workFirst of all, well done: a nicely explained problem. I wish more people were as clear as you.
    Second: I'm no expert on this stuff, so I may well be wrong, but I did note the following:
    1. I can't see anywhere where you're putting out the ":" to separate your signal.
    2. You seem to be doing an awful lot of conversions from Strings to bytes and vice-versa, but only your filename is specified as a UTF-8 conversion. Could you not do something like:
    dos.writeUTF("14:" + requestedFile.getName());or indeed, more generically
    dos.writeUTF(signal + ":" + messageBody);from inside a createMessage() method.
    3. You haven't included the sendToClient() code, but your createData() looks suspiciously like what I would put in a method like that.
    From what I understand, you usually want mirror-images of your streams at your sending and receiving ends, so if your client is expecting an DataInputStream wrapping a ByteArrayInputStream to be read via readUTF(), your server better be sending a ByteArrayOutputStream wrapped in a DataOutputStream created, in its entirety, by writeUTF().
    But after your UTF conversion, you're adding your signal and then using String.getBytes(), which uses the default character set, not UTF.
    HIH (and hope I'm right :-))
    Winston

  • IconFunction with ByteArray as Image Source?

    Hi Guys and Gals,
    How can I convert my ByteArray image string into a CLASS object that I can return in a custom iconFunction?
    Here's what I have:
    private function showListIcon(item:Object):Class
         var result          :Class          = new Class();
         var decoder          :Base64Decoder     = new Base64Decoder();
         if (item.hasOwnProperty("photo"))
              decoder.decode(item.photo);
         else if (item.hasOwnProperty("logo"))
              decoder.decode(item.logo);
         result = decoder.??????????; //(was using decoder.toByteArray() here in other functionality)
         return result;
    Thanks!
    -Mike

    Hi Natasha,
    Thanks for your help on this. Right now your solution is a bit over my head as I don't understand all the details. I did manage to find a solution: I created a method called imageFunction which returns either a Class object or a ByteArray, depending on what is used:
    private function showListImage(item:Object):*
         var decoder     :Base64Decoder     = new Base64Decoder();
         var result     :*;
         [Embed(source="com/brassworks/assets/user.png")]
         var userIcon     :Class;
         [Embed(source="com/brassworks/assets/vendor.png")]
         var vendorIcon     :Class;
         [Embed(source="com/brassworks/assets/group.png")]
         var groupIcon     :Class;
         [Embed(source="com/brassworks/assets/role.png")]
         var roleIcon     :Class;
         [Embed(source="com/brassworks/assets/duty.png")]
         var dutyIcon     :Class;
         [Embed(source="com/brassworks/assets/location.png")]
         var locationIcon:Class;
         [Embed(source="com/brassworks/assets/resource.png")]
         var resourceIcon:Class;
            if (item.hasOwnProperty("photo"))
              if (item.photo.toString().length > 0)
                   decoder.decode(item.photo);
                   result = decoder.toByteArray();
              else
                   result = userIcon;
         else if (item.hasOwnProperty("logo"))
              decoder.decode(item.logo);
              result = decoder.toByteArray();
         else if ((item.hasOwnProperty("name"))
              && (item.hasOwnProperty("company_id")))
              result = groupIcon;
         else if ((item.hasOwnProperty("name"))
              && (!item.hasOwnProperty("company_id")))
              result = roleIcon;
         return result;
    Please let me know if there would be improvements you would make to this; I hope I'm not doing something horribly aggrevious here.

  • Convert byte to string - not working

    Hello. I'm having trouble figuring out this conversion. I want to check if a byte from a byte array is equal to a specified string (or character). This is the code that I have:
    byte byteArray[] = new byte[3];
    byte tempByte = byteArray[2];
    String tempString = tempByte.toString();
    The compilation error that I'm getting: byte cannot be dereferenced
    If you have any idea what I should do to fix this, please let me know.
    c00p

    Use this line instead:
    String tempString = Byte.toString(tempByte);
    You can't call a method on a primitive type of byte.

  • Converting byte[] - String

    Hi, how do I convert from byte[] to String and vice versa.
    Is this correct for byte[]->String
    ByteArrayOutputStream b = new ByteArrayOutputStream();
    b.write(bytearray);
    String s = b.toString();
    and this for String->byte?
    Writer out = new BufferedWriter(new OutputStreamWriter(new ByteArrayOutputStream()));
    out.write(v);
    byte[] b = v.getBytes());
    Thanks!

    Ok, that was a mess - take 2:
    byte[] -> String :
    byte[] byteArray = buildByteArray();
    String strData = new String(byteArray);String -> byte[]
    byte[] stringByteArray = strData.getBytes();Lee

  • Converting Image to Byte Array and then to String

    Hi All...
    Can anyone please help me. I have got a problem while converting a Byte array of BufferedImage to String.
    This is my code, First i convert a BufferedImage to a byte array using ImageIO.wirte
    public String dirName="C:\\image";
    ByteArrayOutputStream baos=new ByteArrayOutputStream(1000);
    BufferedImage img=ImageIO.read(new File(dirName,"red.jpg"));
    ImageIO.write(img, "jpg", baos);
    baos.flush();
    byte[] resultimage=baos.toByteArray();
    baos.close();
    Then i tried to convert this byte array to a string
    String str=new String(resultimage);
    byte[] b=str.getBytes();
    This much worked fine. But when i reversed this process to re-create the image from that string. i found the image distroted.
    BufferedImage imag=ImageIO.read(new ByteArrayInputStream(b));
    ImageIO.write(imag, "jpg", new File(dirName,"snap.jpg"));
    I got this snap.jpg as distroted.
    Please help me i have to convert the image to a string and again i have to re-create the image from that string.

    To conver the bytearray to string use base64.encoding
    String base64String= Base64.encode(baos.toByteArray());
    To convert back use Base64.decode;
    byte[] bytearray = Base64.decode(base64String);
    BufferedImage imag=ImageIO.read(bytearray);

  • URGENT! Alive PDF - export PDF file ("my computer" prompt to save the file, not create in browser)

    Hi - I'm having issues with my code and I'm not an ActionScript coder by any means. I'm using Flash Builder 4. I've been able to figure out how to export to PNG and to XLS but PDF is really killing me.
    Below is my code and it's not causing errors when I do the release build but the my button doesn't work to export to PDF.  I'm trying to create a PNG using the PNGEncoder and then push that out to PDF (when the PDF button is selected). I used some sample code and I've commented out parts that I didn't want to use or didn't seem to apply to my application. Unfortunately, I have a deadline of May 3rd on this and there is no one else in the office here to help me... hope someone out there can.
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" height="650" width="850">
        <mx:Script>
            <![CDATA[
                import mx.collections.ArrayCollection;
                import flash.events.Event;
                import mx.events.DropdownEvent;
                import mx.events.*;
                import mx.graphics.codec.PNGEncoder;
                import org.alivepdf.display.*;
                import org.alivepdf.images.ColorSpace;
                import org.alivepdf.fonts.*;
                import org.alivepdf.layout.*;
                import org.alivepdf.pdf.*;
                import org.alivepdf.saving.*;
                import mx.controls.Alert;
                //PDF Export information
                protected var pdf:PDF;
                protected function savePDF(event:MouseEvent): void {
                    pdf = new PDF(Orientation.LANDSCAPE, Unit.MM, Size.LETTER);
                    pdf.setDisplayMode(Display.FULL_WIDTH);
                    pdf.addPage();
                    var bd:BitmapData = new BitmapData(cChart.width,cChart.height);
                    bd.draw(cChart);
                    var png:PNGEncoder = new PNGEncoder();
                    var ba:ByteArray = png.encode(bd);
                    //try {
                    pdf.addImageStream(ba, ColorSpace.DEVICE_RGB, new Resize ( Mode.FIT_TO_PAGE, Position.CENTERED ), 10, 10, 800, 800, 0, 1, "Normal", null);
                    //} catch (e:Error) {
                    //    trace("Error occurred!");
                    //    Alert.show(e,"");
                    //myPDF.addImageStream(new jpgBytes() as ByteArray, ColorSpace.DEVICE_RGB, null, 0, 0, 500, 500, 0, 1, "Normal", null);
                    //imageBytes:ByteArray, colorSpace:String, resizeMode:Resize=null, x:Number=0, y:Number=0, width:Number=0, height:Number=0, rotation:Number=0, alpha:Number=1, blendMode:String="Normal", link:ILink=null):
                    //pdf.setFont(FontFamily.ARIAL, Style.NORMAL, 12);
                    //pdf.addText("Grafico de Rata de Fallas", 100, 40); // title
                    //pdf.addImage(imprimirRata, 50, 50, 200, 150); // captured canvas with charts
                    //      pdf.addImage(leyendaImprimir, 50, 120, 20,20); // captured leyend of charts
                    //pdf.addText("RTP Software. Modulo de Score Card.", 10, 200); // header of the document
                    //pdf.addText("Creado: " + new Date(), 180, 200); // Add the created date as a leyend or footer on document
                    var fr:FileReference = new FileReference();
                    fr.save(pdf.save(Method.LOCAL), "nep_piefy11.pdf");
                    /*var fs:FileStream = new FileStream();
                    var file: File = File.desktopDirectory.resolvePath("nep_piefy11.pdf"); // Name of the file
                    fs.open(file, FileMode.WRITE);
                    fs.writeBytes(pdf.save(Method.LOCAL));
                    fs.close();*/
                    //Alert.show("El reporte ha sido generado", "Informacion"); // Confirmation message as a pop-up
                //Pie Chart Creation information
                [Bindable]
                public var ds:ArrayCollection = sel;
                private function changeEvt(event:Event):void {
                    if(filterCombo.selectedItem == 'Select NEP') {ds = sel;}
                    if(filterCombo.selectedItem == 'Albemarle-Pamlico Estuary Program') {ds = nep1;}
                    if(filterCombo.selectedItem == 'Barataria-Terrebonne Estuary Program') {ds = nep2;}
                    if(filterCombo.selectedItem == 'Barnegat Bay Estuary Program') {ds = nep3;}
                    if(filterCombo.selectedItem == 'Buzzards Bay National Estuary Program') {ds = nep4;}
                    if(filterCombo.selectedItem == 'Casco Bay Estuary Partnership') {ds = nep5;}
                    if(filterCombo.selectedItem == 'Charlotte Harbor Estuary Program') {ds = nep6;}
                    if(filterCombo.selectedItem == 'Coastal Bend Bays and Estuaries Program') {ds = nep7;}
                    if(filterCombo.selectedItem == 'Delaware Estuary Program') {ds = nep8;}
                    if(filterCombo.selectedItem == 'Delaware Inland Bays Estuary Program') {ds = nep9;}
                    if(filterCombo.selectedItem == 'Galveston Bay Estuary Program') {ds = nep10;}
                    if(filterCombo.selectedItem == 'Indian River Lagoon NEP') {ds = nep11;}
                    if(filterCombo.selectedItem == 'Long Island Sound Study') {ds = nep12;}
                    if(filterCombo.selectedItem == 'Lower Columbia River Estuary') {ds = nep13;}
                    if(filterCombo.selectedItem == 'Maryland Coastal Bays Program') {ds = nep14;}
                    if(filterCombo.selectedItem == 'Massachusetts Bays NEP') {ds = nep15;}
                    if(filterCombo.selectedItem == 'Mobile Bay Estuary Program') {ds = nep16;}
                    if(filterCombo.selectedItem == 'Morro Bay Estuary Program') {ds = nep17;}
                    if(filterCombo.selectedItem == 'Narragansett Bay Estuary Program') {ds = nep18;}
                    if(filterCombo.selectedItem == 'New York-New Jersey Harbor Estuary Program') {ds = nep19;}
                    if(filterCombo.selectedItem == 'Peconic Estuary Program') {ds = nep20;}
                    if(filterCombo.selectedItem == 'Piscataqua Region Estuaries Partnership') {ds = nep21;}
                    if(filterCombo.selectedItem == 'Puget Sound Partnership') {ds = nep22;}
                    if(filterCombo.selectedItem == 'San Francisco Estuary Project') {ds = nep23;}
                    if(filterCombo.selectedItem == 'San Juan Bay NEP') {ds = nep24;}
                    if(filterCombo.selectedItem == 'Santa Monica Bay Restoration Project') {ds = nep25;}
                    if(filterCombo.selectedItem == 'Sarasota Bay Estuary Program') {ds = nep26;}
                    if(filterCombo.selectedItem == 'Tampa Bay Estuary Program') {ds = nep27;}
                    if(filterCombo.selectedItem == 'Tillamook Estuaries Partnership') {ds = nep28;}
                [Bindable]
                private var sel:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0.5},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep1:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 778.44},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0.45},
                    { habtype: "Estuarine Shoreline", Acres: 1276.30},
                    { habtype: "Instream", Acres: 1.0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0.75},
                    { habtype: "Upland", Acres: 779.74},
                    { habtype: "Wetland", Acres: 3268.31} ]);
                [Bindable]
                private var nep2:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 7.25},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 1185} ]);
                [Bindable]
                private var nep3:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 35.21},
                    { habtype: "Upland", Acres: 852.57},
                    { habtype: "Wetland", Acres: 197.82} ]);
                [Bindable]
                private var nep4:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 751.82},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 321.82},
                    { habtype: "Wetland", Acres: 157.35} ]);
                [Bindable]
                private var nep5:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 217},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 324.5},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep6:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 1268},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 50},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 61},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 809},
                    { habtype: "Wetland", Acres: 1690} ]);
                [Bindable]
                private var nep7:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 726} ]);
                [Bindable]
                private var nep8:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0.28},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 82},
                    { habtype: "Estuarine Shoreline", Acres: 0.14},
                    { habtype: "Instream", Acres: 2.3},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 643},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 501.9},
                    { habtype: "Upland", Acres: 148.71},
                    { habtype: "Wetland", Acres: 2586.02} ]);
                [Bindable]
                private var nep9:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 26.21},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 37},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 27},
                    { habtype: "Wetland", Acres: 646} ]);
                [Bindable]
                private var nep10:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 2868},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 407.06} ]);
                [Bindable]
                private var nep11:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 5},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 3},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 43},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 12910.5},
                    { habtype: "Wetland", Acres: 5026} ]);
                [Bindable]
                private var nep12:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 67},
                    { habtype: "Beach/Dune", Acres: 21.95},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 120.72},
                    { habtype: "Wetland", Acres: 151.08} ]);
                [Bindable]
                private var nep13:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 12},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 194},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 200} ]);
                [Bindable]
                private var nep14:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 58},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 153},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 494.3},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep15:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 1313},
                    { habtype: "Estuarine Shoreline", Acres: 8},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 543.8} ]);
                [Bindable]
                private var nep16:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 40},
                    { habtype: "Estuarine Shoreline", Acres: 6.5},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 195},
                    { habtype: "Wetland", Acres: 85} ]);
                [Bindable]
                private var nep17:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 1109.9},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 1.14},
                    { habtype: "Estuarine Shoreline", Acres: 0.28},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0.71},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep18:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 1099},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep19:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 101.3} ]);
                [Bindable]
                private var nep20:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 98.72},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 17.99},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 106.13},
                    { habtype: "Wetland", Acres: 12.97} ]);
                [Bindable]
                private var nep21:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 9},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 3},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 2},
                    { habtype: "Upland", Acres: 1451},
                    { habtype: "Wetland", Acres: 27} ]);
                [Bindable]
                private var nep22:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 26},
                    { habtype: "Beach/Dune", Acres: 1.65},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 240.39},
                    { habtype: "Estuarine Shoreline", Acres: 314.97},
                    { habtype: "Instream", Acres: 505.87},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 1450.47},
                    { habtype: "Upland", Acres: 1176.7},
                    { habtype: "Wetland", Acres: 850.58} ]);
                [Bindable]
                private var nep23:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 43.05},
                    { habtype: "Upland", Acres: 4519},
                    { habtype: "Wetland", Acres: 3271} ]);
                [Bindable]
                private var nep24:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 1},
                    { habtype: "Coral Reef", Acres: 0.13},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 1},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 10} ]);
                [Bindable]
                private var nep25:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 1.6},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 7},
                    { habtype: "Riparian", Acres: 100},
                    { habtype: "Upland", Acres: 6.2},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep26:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 5.5},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 4.5},
                    { habtype: "Estuarine Shoreline", Acres: 15},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 82},
                    { habtype: "Wetland", Acres: 40} ]);
                [Bindable]
                private var nep27:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 5.1},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 23},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 4.8},
                    { habtype: "Mangrove", Acres: 3.5},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 1221},
                    { habtype: "Wetland", Acres: 17.4}]);   
                [Bindable]
                private var nep28:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 67},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 2},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 31.33},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 74.24}]);               
                private function displayAcres(data:Object, field:String, index:Number, percentValue:Number):String {
                    var temp:String= (" " + percentValue).substr(0,6);
                    return data.habtype + ": " + '\n ' + data.Acres + " Acres" + '\n ' + temp + "%";
                //Export to PNG information
                private function saveImageAs(event:MouseEvent):void
                    var bd:BitmapData = new BitmapData(cChart.width,cChart.height);
                    bd.draw(cChart);
                    var png:PNGEncoder = new PNGEncoder();
                    var ba:ByteArray = png.encode(bd);
                    var fr:FileReference = new FileReference();
                    fr.save(ba, "nepfy11-piechart.png");
            ]]>
        </mx:Script>
        <!--mx:SeriesInterpolate id="chartChange" duration="2000" /-->
        <mx:Panel id="cChart" title="2011 Habitat Efforts" width="825" height="600" chromeColor="#527EAC" layout="vertical" color="#FFFFFF" verticalGap="10" x="15" y="15">
            <mx:HBox width="400" height="20">
                <mx:ComboBox id="filterCombo" x="140" y="140" change="changeEvt(event)" color="#000000" >
                    <mx:String>Select NEP</mx:String>
                    <mx:String>Albemarle-Pamlico Estuary Program</mx:String>
                    <mx:String>Barataria-Terrebonne Estuary Program</mx:String>
                    <mx:String>Barnegat Bay Estuary Program</mx:String>
                    <mx:String>Buzzards Bay National Estuary Program</mx:String>
                    <mx:String>Casco Bay Estuary Partnership</mx:String>
                    <mx:String>Charlotte Harbor Estuary Program</mx:String>
                    <mx:String>Coastal Bend Bays and Estuaries Program</mx:String>
                    <mx:String>Delaware Estuary Program</mx:String>
                    <mx:String>Delaware Inland Bays Estuary Program</mx:String>
                    <mx:String>Galveston Bay Estuary Program</mx:String>
                    <mx:String>Indian River Lagoon NEP</mx:String>
                    <mx:String>Long Island Sound Study</mx:String>
                    <mx:String>Lower Columbia River Estuary</mx:String>
                    <mx:String>Maryland Coastal Bays Program</mx:String>
                    <mx:String>Massachusetts Bays NEP</mx:String>
                    <mx:String>Mobile Bay Estuary Program</mx:String>
                    <mx:String>Morro Bay Estuary Program</mx:String>
                    <mx:String>Narragansett Bay Estuary Program</mx:String>
                    <mx:String>New York-New Jersey Harbor Estuary Program</mx:String>
                    <mx:String>Peconic Estuary Program</mx:String>
                    <mx:String>Piscataqua Region Estuaries Partnership</mx:String>
                    <mx:String>Puget Sound Partnership</mx:String>
                    <mx:String>San Francisco Estuary Project</mx:String>
                    <mx:String>San Juan Bay NEP</mx:String>
                    <mx:String>Santa Monica Bay Restoration Project</mx:String>
                    <mx:String>Sarasota Bay Estuary Program</mx:String>
                    <mx:String>Tampa Bay Estuary Program</mx:String>
                    <mx:String>Tillamook Estuaries Partnership</mx:String>
                </mx:ComboBox>
            </mx:HBox>
            <mx:HBox horizontalGap="20" width="822" height="535">
                <mx:PieChart id="chart" showDataTips="true" dataProvider="{ds}" width="634"  height="534" paddingTop="10" fontSize="9" fontFamily="Arial" color="#000000" textAlign="left">
                    <mx:series>
                        <mx:PieSeries id="seriesId" explodeRadius="0.06" nameField="habtype" labelPosition="callout" color="#000000" insideLabelSizeLimit="8" field="Acres" labelFunction="displayAcres">
                        </mx:PieSeries>
                    </mx:series>
                </mx:PieChart>
                <mx:Legend dataProvider="{chart}" dropShadowVisible="true" width="150" color="#000000" height="350" chromeColor="#527EAC" borderColor="#527EAC" direction="vertical"/>          
            </mx:HBox>
        </mx:Panel>
        <mx:Button x="734" y="623" label="Export Pie Chart" id="btnSnap" click="saveImageAs(event)"/>
        <mx:Button x="444" y="623" label="PDF" click="savePDF(event)" />
    </mx:Application>
    Thank you in advance,
    Alison

    I figured it out!!!!! In case anyone else needs to know - here is the working code:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" height="650" width="850">
        <mx:Script>
            <![CDATA[
                import flash.events.Event;
                import mx.collections.ArrayCollection;
                import mx.controls.Alert;
                import mx.events.*;
                import mx.events.DropdownEvent;
                import mx.graphics.codec.PNGEncoder;
                import org.alivepdf.display.*;
                import org.alivepdf.fonts.*;
                import org.alivepdf.images.ColorSpace;
                import org.alivepdf.images.PDFImage;
                import org.alivepdf.layout.*;
                import org.alivepdf.pdf.*;
                import org.alivepdf.saving.*;
                //PDF Export information
                private var pdf:PDF;
                private function savePDF(event:MouseEvent): void {
                    pdf = new PDF(Orientation.LANDSCAPE, Unit.MM, Size.LETTER);
                    pdf.setDisplayMode(Display.FULL_WIDTH);
                    pdf.addPage();
                    var bd:BitmapData = new BitmapData(cChart.width,cChart.height);
                    bd.draw(cChart);
                    var bm:Bitmap=new Bitmap(bd);
                    //bm.x=825;
                    //bm.y=600;
                    //bm.width=825;
                    pdf.setMargins(0, 2, 0, 0);
                    pdf.addImage(bm, new Resize (Mode.RESIZE_PAGE, Position.CENTERED));
                    //pdf.setXY(10,95);
                    var bytes:ByteArray=pdf.save(Method.LOCAL);
                    var fr:FileReference=new FileReference();
                    fr.save(bytes,"nep_piefy11.pdf");
                //Pie Chart Creation information
                [Bindable]
                public var ds:ArrayCollection = sel;
                private function changeEvt(event:Event):void {
                    if(filterCombo.selectedItem == 'Select NEP') {ds = sel;}
                    if(filterCombo.selectedItem == 'Albemarle-Pamlico Estuary Program') {ds = nep1;}
                    if(filterCombo.selectedItem == 'Barataria-Terrebonne Estuary Program') {ds = nep2;}
                    if(filterCombo.selectedItem == 'Barnegat Bay Estuary Program') {ds = nep3;}
                    if(filterCombo.selectedItem == 'Buzzards Bay National Estuary Program') {ds = nep4;}
                    if(filterCombo.selectedItem == 'Casco Bay Estuary Partnership') {ds = nep5;}
                    if(filterCombo.selectedItem == 'Charlotte Harbor Estuary Program') {ds = nep6;}
                    if(filterCombo.selectedItem == 'Coastal Bend Bays and Estuaries Program') {ds = nep7;}
                    if(filterCombo.selectedItem == 'Delaware Estuary Program') {ds = nep8;}
                    if(filterCombo.selectedItem == 'Delaware Inland Bays Estuary Program') {ds = nep9;}
                    if(filterCombo.selectedItem == 'Galveston Bay Estuary Program') {ds = nep10;}
                    if(filterCombo.selectedItem == 'Indian River Lagoon NEP') {ds = nep11;}
                    if(filterCombo.selectedItem == 'Long Island Sound Study') {ds = nep12;}
                    if(filterCombo.selectedItem == 'Lower Columbia River Estuary') {ds = nep13;}
                    if(filterCombo.selectedItem == 'Maryland Coastal Bays Program') {ds = nep14;}
                    if(filterCombo.selectedItem == 'Massachusetts Bays NEP') {ds = nep15;}
                    if(filterCombo.selectedItem == 'Mobile Bay Estuary Program') {ds = nep16;}
                    if(filterCombo.selectedItem == 'Morro Bay Estuary Program') {ds = nep17;}
                    if(filterCombo.selectedItem == 'Narragansett Bay Estuary Program') {ds = nep18;}
                    if(filterCombo.selectedItem == 'New York-New Jersey Harbor Estuary Program') {ds = nep19;}
                    if(filterCombo.selectedItem == 'Peconic Estuary Program') {ds = nep20;}
                    if(filterCombo.selectedItem == 'Piscataqua Region Estuaries Partnership') {ds = nep21;}
                    if(filterCombo.selectedItem == 'Puget Sound Partnership') {ds = nep22;}
                    if(filterCombo.selectedItem == 'San Francisco Estuary Project') {ds = nep23;}
                    if(filterCombo.selectedItem == 'San Juan Bay NEP') {ds = nep24;}
                    if(filterCombo.selectedItem == 'Santa Monica Bay Restoration Project') {ds = nep25;}
                    if(filterCombo.selectedItem == 'Sarasota Bay Estuary Program') {ds = nep26;}
                    if(filterCombo.selectedItem == 'Tampa Bay Estuary Program') {ds = nep27;}
                    if(filterCombo.selectedItem == 'Tillamook Estuaries Partnership') {ds = nep28;}
                [Bindable]
                private var sel:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0.5},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep1:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 778.44},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0.45},
                    { habtype: "Estuarine Shoreline", Acres: 1276.30},
                    { habtype: "Instream", Acres: 1.0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0.75},
                    { habtype: "Upland", Acres: 779.74},
                    { habtype: "Wetland", Acres: 3268.31} ]);
                [Bindable]
                private var nep2:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 7.25},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 1185} ]);
                [Bindable]
                private var nep3:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 35.21},
                    { habtype: "Upland", Acres: 852.57},
                    { habtype: "Wetland", Acres: 197.82} ]);
                [Bindable]
                private var nep4:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 751.82},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 321.82},
                    { habtype: "Wetland", Acres: 157.35} ]);
                [Bindable]
                private var nep5:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 217},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 324.5},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep6:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 1268},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 50},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 61},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 809},
                    { habtype: "Wetland", Acres: 1690} ]);
                [Bindable]
                private var nep7:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 726} ]);
                [Bindable]
                private var nep8:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0.28},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 82},
                    { habtype: "Estuarine Shoreline", Acres: 0.14},
                    { habtype: "Instream", Acres: 2.3},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 643},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 501.9},
                    { habtype: "Upland", Acres: 148.71},
                    { habtype: "Wetland", Acres: 2586.02} ]);
                [Bindable]
                private var nep9:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 26.21},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 37},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 27},
                    { habtype: "Wetland", Acres: 646} ]);
                [Bindable]
                private var nep10:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 2868},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 407.06} ]);
                [Bindable]
                private var nep11:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 5},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 3},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 43},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 12910.5},
                    { habtype: "Wetland", Acres: 5026} ]);
                [Bindable]
                private var nep12:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 67},
                    { habtype: "Beach/Dune", Acres: 21.95},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 120.72},
                    { habtype: "Wetland", Acres: 151.08} ]);
                [Bindable]
                private var nep13:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 12},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 194},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 200} ]);
                [Bindable]
                private var nep14:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 58},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 153},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 494.3},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep15:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 1313},
                    { habtype: "Estuarine Shoreline", Acres: 8},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 543.8} ]);
                [Bindable]
                private var nep16:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 40},
                    { habtype: "Estuarine Shoreline", Acres: 6.5},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 195},
                    { habtype: "Wetland", Acres: 85} ]);
                [Bindable]
                private var nep17:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 1109.9},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 1.14},
                    { habtype: "Estuarine Shoreline", Acres: 0.28},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0.71},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep18:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 1099},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep19:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 101.3} ]);
                [Bindable]
                private var nep20:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 98.72},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 17.99},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 106.13},
                    { habtype: "Wetland", Acres: 12.97} ]);
                [Bindable]
                private var nep21:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 9},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 3},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 2},
                    { habtype: "Upland", Acres: 1451},
                    { habtype: "Wetland", Acres: 27} ]);
                [Bindable]
                private var nep22:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 26},
                    { habtype: "Beach/Dune", Acres: 1.65},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 240.39},
                    { habtype: "Estuarine Shoreline", Acres: 314.97},
                    { habtype: "Instream", Acres: 505.87},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 1450.47},
                    { habtype: "Upland", Acres: 1176.7},
                    { habtype: "Wetland", Acres: 850.58} ]);
                [Bindable]
                private var nep23:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 43.05},
                    { habtype: "Upland", Acres: 4519},
                    { habtype: "Wetland", Acres: 3271} ]);
                [Bindable]
                private var nep24:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 1},
                    { habtype: "Coral Reef", Acres: 0.13},
                    { habtype: "Estuarine", Acres: 0},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 1},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 10} ]);
                [Bindable]
                private var nep25:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 1.6},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 7},
                    { habtype: "Riparian", Acres: 100},
                    { habtype: "Upland", Acres: 6.2},
                    { habtype: "Wetland", Acres: 0} ]);
                [Bindable]
                private var nep26:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 5.5},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 4.5},
                    { habtype: "Estuarine Shoreline", Acres: 15},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 82},
                    { habtype: "Wetland", Acres: 40} ]);
                [Bindable]
                private var nep27:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 0},
                    { habtype: "Beach/Dune", Acres: 5.1},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 23},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 4.8},
                    { habtype: "Mangrove", Acres: 3.5},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 0},
                    { habtype: "Upland", Acres: 1221},
                    { habtype: "Wetland", Acres: 17.4}]);   
                [Bindable]
                private var nep28:ArrayCollection = new ArrayCollection( [
                    { habtype: "Agriculture/Ranch Land", Acres: 67},
                    { habtype: "Beach/Dune", Acres: 0},
                    { habtype: "Coral Reef", Acres: 0},
                    { habtype: "Estuarine", Acres: 2},
                    { habtype: "Estuarine Shoreline", Acres: 0},
                    { habtype: "Instream", Acres: 0},
                    { habtype: "Island", Acres: 0},
                    { habtype: "Lake/Pond", Acres: 0},
                    { habtype: "Mangrove", Acres: 0},
                    { habtype: "Other", Acres: 0},
                    { habtype: "Riparian", Acres: 31.33},
                    { habtype: "Upland", Acres: 0},
                    { habtype: "Wetland", Acres: 74.24}]);               
                private function displayAcres(data:Object, field:String, index:Number, percentValue:Number):String {
                    var temp:String= (" " + percentValue).substr(0,6);
                    return data.habtype + ": " + '\n ' + data.Acres + " Acres" + '\n ' + temp + "%";
                //Export to PNG information
                private function saveImageAs(event:MouseEvent):void
                    var bd:BitmapData = new BitmapData(cChart.width,cChart.height);
                    bd.draw(cChart);
                    var png:PNGEncoder = new PNGEncoder();
                    var ba:ByteArray = png.encode(bd);
                    var fr:FileReference = new FileReference();
                    fr.save(ba, "nepfy11-piechart.png");
            ]]>
        </mx:Script>
        <!--mx:SeriesInterpolate id="chartChange" duration="2000" /-->
        <mx:Panel id="cChart" title="2011 Habitat Efforts" width="825" height="600" chromeColor="#527EAC" layout="vertical" color="#FFFFFF" verticalGap="10" x="15" y="15">
            <mx:HBox width="400" height="20">
                <mx:ComboBox id="filterCombo" x="140" y="140" change="changeEvt(event)" color="#000000" >
                    <mx:String>Select NEP</mx:String>
                    <mx:String>Albemarle-Pamlico Estuary Program</mx:String>
                    <mx:String>Barataria-Terrebonne Estuary Program</mx:String>
                    <mx:String>Barnegat Bay Estuary Program</mx:String>
                    <mx:String>Buzzards Bay National Estuary Program</mx:String>
                    <mx:String>Casco Bay Estuary Partnership</mx:String>
                    <mx:String>Charlotte Harbor Estuary Program</mx:String>
                    <mx:String>Coastal Bend Bays and Estuaries Program</mx:String>
                    <mx:String>Delaware Estuary Program</mx:String>
                    <mx:String>Delaware Inland Bays Estuary Program</mx:String>
                    <mx:String>Galveston Bay Estuary Program</mx:String>
                    <mx:String>Indian River Lagoon NEP</mx:String>
                    <mx:String>Long Island Sound Study</mx:String>
                    <mx:String>Lower Columbia River Estuary</mx:String>
                    <mx:String>Maryland Coastal Bays Program</mx:String>
                    <mx:String>Massachusetts Bays NEP</mx:String>
                    <mx:String>Mobile Bay Estuary Program</mx:String>
                    <mx:String>Morro Bay Estuary Program</mx:String>
                    <mx:String>Narragansett Bay Estuary Program</mx:String>
                    <mx:String>New York-New Jersey Harbor Estuary Program</mx:String>
                    <mx:String>Peconic Estuary Program</mx:String>
                    <mx:String>Piscataqua Region Estuaries Partnership</mx:String>
                    <mx:String>Puget Sound Partnership</mx:String>
                    <mx:String>San Francisco Estuary Project</mx:String>
                    <mx:String>San Juan Bay NEP</mx:String>
                    <mx:String>Santa Monica Bay Restoration Project</mx:String>
                    <mx:String>Sarasota Bay Estuary Program</mx:String>
                    <mx:String>Tampa Bay Estuary Program</mx:String>
                    <mx:String>Tillamook Estuaries Partnership</mx:String>
                </mx:ComboBox>
            </mx:HBox>
            <mx:HBox horizontalGap="20" width="822" height="535">
                <mx:PieChart id="chart" showDataTips="true" dataProvider="{ds}" width="634"  height="534" paddingTop="10" fontSize="9" fontFamily="Arial" color="#000000" textAlign="left">
                    <mx:series>
                        <mx:PieSeries id="seriesId" explodeRadius="0.06" nameField="habtype" labelPosition="callout" color="#000000" insideLabelSizeLimit="8" field="Acres" labelFunction="displayAcres">
                        </mx:PieSeries>
                    </mx:series>
                </mx:PieChart>
                <mx:Legend dataProvider="{chart}" dropShadowVisible="true" width="150" color="#000000" height="350" chromeColor="#527EAC" borderColor="#527EAC" direction="vertical"/>          
            </mx:HBox>
        </mx:Panel>
        <mx:Button x="746" y="623" label="Export to PNG" id="btnSnap" click="saveImageAs(event)"/>
        <mx:Button x="651" y="623" label="Export to PDF" click="savePDF(event)" />
    </mx:Application>
    Thanks, Alison

  • Variable URL in data service

    I'm new to Flex and trying to create a proof of concept Air App.  I have it connecting to an http service to retrieve data but I want the URL to be configurable.  I created a preferences page which is working, but I can't seem to load the URL preference into a variable for the http service.  Below is my code:
    <fx:Script>
            <![CDATA[
                import mx.controls.Alert;
                import mx.events.FlexEvent;
                import services.exadatademo.newUrl;
                //public var testDbUrl:String = "http://localhost/pls/apex/";
                public var testDbUrl:String;
                private function init():void
                    var storedDatabaseUrl:ByteArray = EncryptedLocalStore.getItem("DatabaseUrl");
                    testDbUrl = storedDatabaseUrl.readUTFBytes(storedDatabaseUrl.length);
                    services.exadatademo.newUrl = 'bar';
                    trace(testDbUrl);
                protected function getPrefs():void
                    var storedDatabaseUrl:ByteArray = EncryptedLocalStore.getItem("DatabaseUrl");
                    dbUrlTxt.text = storedDatabaseUrl.readUTFBytes(storedDatabaseUrl.length);
                    testDbUrl = dbUrlTxt.text;
                    var storedDatabaseUserName:ByteArray = EncryptedLocalStore.getItem("DatabaseUserName");
                    dbUsernameTxt.text = storedDatabaseUserName.readUTFBytes(storedDatabaseUserName.length);
                    var storedDatabasePassword:ByteArray = EncryptedLocalStore.getItem("DatabasePassword");
                    dbPasswdTxt.text = storedDatabasePassword.readUTFBytes(storedDatabasePassword.length);
                private function savePrefs():void
                    var bytes:ByteArray = new ByteArray();
                    //write string text as UTF8 bytes
                    bytes.writeUTFBytes(dbUrlTxt.text);
                    EncryptedLocalStore.setItem("DatabaseUrl", bytes);
                    bytes = new ByteArray();
                    bytes.writeUTFBytes(dbUsernameTxt.text);
                    EncryptedLocalStore.setItem("DatabaseUserName", bytes);
                    bytes = new ByteArray();
                    bytes.writeUTFBytes(dbPasswdTxt.text);
                    EncryptedLocalStore.setItem("DatabasePassword", bytes);
                protected function button1_clickHandler(event:MouseEvent):void
                    trace('foo');
                    savePrefs();
                    currentState = "Main";
                protected function linkbutton1_clickHandler(event:MouseEvent):void
                    currentState = "Preferences";
                    getPrefs();
                protected function InterconnectTraffic_creationCompleteHandler(event:FlexEvent):void
                    //GetEmployeesResult.token = exadataDemo.GetEmployees();
                protected function button2_clickHandler(event:MouseEvent):void
                    // TODO Auto-generated method stub
                    GetEmployeesResult.token = exadataDemo.GetEmployees();
            ]]>
        </fx:Script>
    package services.exadatademo
        import mx.core.FlexGlobals;
        public var newUrl:String = null;
    public class ExadataDemo extends _Super_ExadataDemo
        public function ExadataDemo():void
            super();
            trace(newUrl+'hello');
            trace(FlexGlobals.topLevelApplication['testDbUrl']);
            _serviceControl.baseURL = FlexGlobals.topLevelApplication['testDbUrl'];
    Thanks,
    Tyler

    I tried something similar quite some time ago, spend a lot of
    time on this task, but never got to a real solution.
    As far as I remember there was no way to do it in with shared
    libraries that do have different urls.
    There might be a workaround to build a php/asp/jsp script
    that pipes through the content of a configured shared lib to flash,
    pretending it would be the requested shared lib.

  • Picture in PDF

    Hello All,
         I have an issue while converting bytearray to String.
    The problem primarily is, I have a PDF which contains a picute embedded in that.
    I need to read this PDF and has to conver it into String.
    When converting to String I'm facing some issues with data getting corrupted. When I write the data back,
    the PDF will be invalid and will open without the picture message.
    The code I need to get working is
    FileInputStream fin= new FileInputStream("Input.pdf"):
    byte[] bin = new byte[fin.available()];
    String sin = new String (bin,"UTF-8");// I guess this is creating the problem , I tried almost all the supported encoding, but did no good :-(
    FileOutputStream fout = new FileOutputStream("Output.pdf");
    fout.write(sin.getBytes());
    fout.close;
    fin.close;
    Any help will be hihgly appresiated as this is a critical problem for me.
    TIA,
    Kannan

    I missed the explanation of why you had to change those bytes to a string. Just don't do that and you won't corrupt your PDF.

  • Put String into a ByteArray

    Hi:
    I have a String variable with the result of an SQL 2005
    varbinary field.
    Can anybody tell me how to put this information into a
    ByteArray variable?
    Thanx

    Arrays.asList(array);

  • Problem in Storing ByteArray(Value) with String (Key) using put method

    Hello Folks:
    I wish to store a byte array with associated with a String. For this I use the put method in Java which stores put(Object key, Object value). I have written a piece of code which works but I am not able to understand it. Its not outputing what I want but something else.
    I guess, I have some ignorance.
    When I compile using
    $javac testing.java propsput.java
    $java testing
    I get the following output.
    Bytes Array:[B@1372a1a
    I understand that B stands for Bytes array. Also, If I change the String I get the same thing. If I modify the code for Integer array
    and store some Integer array I get [I@1372a1a.
    I fail to understand why I am getting this 1372a1a again and again.
    Instead where is my array.
    May be I am not using the method getValue correctly.
    Thank You very much for your help
    Regards
    //testing.java
    import java.io.*;
    import java.util.*;
    public class testing{
    public static void main(String args[]){
    propsput headers=new propsput();
    String s="Let me See how you do it";
    byte buf[]=s.getBytes();
    headers.put("Bytes Array",buf);
    //propsput.java
    import java.util.*;
    import java.io.*;
    public class propsput{
    public void put (String key, byte[] value) throws IllegalArgumentException{
    HashMap _props =new HashMap();
    _props.put(key, value);
    Set set =_props.entrySet();
    Iterator i=set.iterator();
    while(i.hasNext())
    Map.Entry me=(Map.Entry) i.next();
    System.out.print(me.getKey()+":");
    System.out.println(me.getValue());
    ----------------------------------------------------------------

    Hi Thanks for your help.
    But I have included your method in the propsput class and also using it like this in the propsput class.
    while(i.hasNext())
    Map.Entry me=(Map.Entry) i.next();
    System.out.print(me.getKey()+":");
    byte a[]=me.getValue();
    showBytes(a);
    But while compiling with javac I get the following error:
    propsput.java:24: incompatible types
    found : java.lang.Object
    required: byte[]
    byte a[]=me.getValue();
    Please let me know how should I use it so as to print my String.
    Well, its still not clear in the previous code (my First Message) that why I am gettinng "1372a1a" everytime. (Even if I change the String. When I change the array to be an Integer array I get [I@1372a1a )
    Othewise in the case of Strings I get ( [B@1372a1a)
    Bytes Array:[B@1372a1a
    Thanks and Regards                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • IMAGEIO IS WORKING BUT BYTEARRAY IS NOT WORKING:

    Hi all
    I am getting images from gmail contacts and trying to store it in DB
    using my http code:InputStream is=urlconnection.getInputStream();
    i could able to store the inputstream in file using:
    BufferedImage filebuffer=ImageIO.read(is);
    FileOutputStream fos=new FileOutputStream("picturerecent.jpg");
    ImageIO.write(filebuffer, "jpg", fos);
    but i was trying to store it in DB using the following code but it is not working.i am having a question that
    how it writing to a file without any problem.why not to database:
    try {
           String url = "jdbc:mysql://localhost:3306/";
             String db = "test";
             String driver = "com.mysql.jdbc.Driver";
                    Class.forName(driver);
                    con = DriverManager.getConnection(url+db,"root","");
                    try{
    PreparedStatement psmnt;
         psmnt = con.prepareStatement("insert into gmailphoto(id,Photo) "+ "values(?,?)");
         psmnt.setInt(1, 9);
         psmnt.setObject(2, is, java.sql.Types.BLOB);
         int s = psmnt.executeUpdate();
           Statement st = con.createStatement();
        try{
            ResultSet rs=st.executeQuery("select photo from gmailphoto where id=9");
            if(rs.next())
              {     //byte[] bytearray = new byte[4096];
                  int size=0;
                File sImage;
    //FIRST TRY
                FileWriter wr=new FileWriter(new File("c:\\imageOutput.jpg"));
                IOUtils.copy(rs.getBlob("photo").getBinaryStream(),wr);
                //SECOND TRY
                BufferedImage bf=ImageIO.read(new ByteArrayInputStream(rs.getBytes("photo")));
                FileOutputStream fout=new FileOutputStream(new File("C:\\imageOut"));
                if(bf!=null)ImageIO.write(bf, "jpg", fout);
                if(wr!=null)
                wr.flush();
                wr.close();
              rs.close();
           }}catch(SQLException e){
                System.out.println(e);
           }Thanks a lot for help

    but i was trying to store it in DB using the following codeThere is no code here that writes to a database. There are two lots of code that write to a file.

  • Converting a text file into a String

    I need to convert a text file (in whatever format, in my case it would be xml and xsl files) in a String.
    I made this methods:
    public static String createStringFromFile(File f) {
            StringBuffer buf = new StringBuffer();
            try {
                FileInputStream fInp = new FileInputStream(f);
                byte[] byteArray = new byte[fInp.available()];
                int bLetti = fInp.read(byteArray);  
                if (bLetti == fInp.available()) {
                    for (int i=0; i<fInp.available(); i++)
                        buf.append(Byte.toString(byteArray));
    else
    throw (new IOException("Errore nella lettura del file"));
    fInp.close();
    } catch (Exception e) {
    ErrorManager.getError(e);
    return (buf.toString());
    public static String createStringFromFile(String fileName) {
    StringBuffer buf = new StringBuffer();
    try {
    FileInputStream fInp = new FileInputStream(fileName);
    byte[] byteArray = new byte[fInp.available()];
    int bLetti = fInp.read(byteArray);
    if (bLetti == fInp.available()) {
    for (int i=0; i<fInp.available(); i++)
    buf.append(Byte.toString(byteArray[i]));
    else
    throw (new IOException("Errore nella lettura del file"));
    fInp.close();
    } catch (Exception e) {
    ErrorManager.getError(e);
    return (buf.toString());
    There are no compilation or runtime errors, but the result string is empty. Not null, empty. What should I do? :)

    Do you really want to use bytes and so on when java does it all for you?
    Here's how I did it, hope it's useful.
    public String getFileAsString(String fileName){
         StringBuffer buffer = new StringBuffer();
         try{
         BufferedReader bRead = new BufferedReader(new FileReader(new File(fileName)));
         String str = "";
         while( (str = bRead.readLine()) != null ){
              buffer.append(str);
         }//end while
         bRead.close();
         }catch(Exception e){
         System.err.println("in getFileAsString(): " + e.toString());
         }//end try
         return buffer.toString();
    }//end getAsString()

  • How to open a PDF File from a ByteArray

    Hi, Fellows,
    I'm having the following problem:
    I have put a PDF file inside a BLOB field in a table in my SQLite database.
    And I can retrieve it from this database without any problem, receiving a ByteArray data type as result.
    What I want to know is what I should do to render this file in my HTML flex object without saving it to a file…
    I used the mx.controls.HTML.data property, but what I see is the TEXT of my PDF file. The mx.controls.HTML.location needs a STRING with the link to a URL site or file.
    Thanks in advance for your help.
    Here, my code:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:WindowedApplication xmlns:mx=" http://www.adobe.com/2006/mxml" layout="absolute" width="810" height="620"
          creationComplete="creationCompleteHandler();">
          <mx:Script>
                <![CDATA[
                      import flash.data.*;
                      import flash.filesystem.*;
                       private var _connection:SQLConnection;
                      private var _statement:SQLStatement; 
                 private function creationCompleteHandler():void {
                    var file:File = File.applicationStorageDirectory.resolvePath("arq.db");
                    _connection = new SQLConnection();
                    _connection.addEventListener(SQLEvent.OPEN, openHandler);
                    _connection.openAsync(file, SQLMode.CREATE);
                 private function openHandler(event:SQLEvent):void {
                    var sql:SQLStatement = new SQLStatement();
                    sql.sqlConnection = _connection;
                    sql.text = "CREATE TABLE IF NOT EXISTS arq(" +
                               "id INTEGER PRIMARY KEY AUTOINCREMENT, " +
                               "nome TEXT, " + 
                                "arquivo BLOB)";
                    sql.execute();        
                 private function insertFile(identificacao:String, caminho:String):void {
                            var sql:SQLStatement = new SQLStatement();
                            sql.sqlConnection = _connection;
                            var arquivo:File = new File(caminho);
                            var arqStream:FileStream = new FileStream();
                            arqStream.open(arquivo,SQLMode.READ);
                            var arqBlob:ByteArray = new ByteArray();
                            arqStream.readBytes(arqBlob);
                            arqStream.close();
                    sql.text = "INSERT INTO arq(nome, arquivo)" + 
                                "VALUES(@nome, @arquivo)";
                    sql.parameters["@nome"] = identificacao;
                    sql.parameters["@arquivo"] = arqBlob;
                    sql.execute();
                     trace("Arquivo inserido com Sucesso!!!");
                     lb1.text = "Arquivo inserido com Sucesso!!!";
                 private function selectFile(identificacao:String):void {
                             var sql:SQLStatement = new SQLStatement();
                            sql.sqlConnection = _connection;
                    sql.text = "SELECT id, arquivo FROM arq WHERE nome=@nome";
                    sql.parameters["@nome"] = identificacao;
                    trace(sql.text);
                    sql.addEventListener(SQLEvent.RESULT, apresentarDados);
                    sql.execute();
                 private function apresentarDados(event:SQLEvent):void {
                             var statement:SQLStatement = event.target as SQLStatement;
                            var result:SQLResult = statement.getResult();
                            if(result != null && result.data != null) {
                                  var dataset:Array = result.data;
                                  trace(dataset.length);
                            var arqBlob:ByteArray = dataset[0].arquivo;
                       var xx:HTMLLoader = new  HTMLLoader();
                      var ur:URLRequest = new URLRequest();
                      var ul:URLLoader = new URLLoader();
                       //Right now, it's doing nothing
    ur.contentType = "application/pdf";
                       ul.dataFormat = URLLoaderDataFormat.BINARY;
                      ul.data = arqBlob;
                       //Here is my problem - WHAT SHOULD I DO?
    pdfFile.data = arqBlob;
                           trace("Cheguei!!!");
                          lb1.text = "Cheguei!!!";
                             } else {
                                  trace("Não funcionou!!!")
                 private function sair():void {
                      this.exit();
                 ]]>
          </mx:Script>
          <mx:TextInput x="99" y="10" id="arq"/>
          <mx:Label x="10" y="12" text="Identificação:" width="81"/>
          <mx:Button x="168" y="40" label="Apresentar" click="selectFile(arq.text)"/>
          <mx:Button x="728" y="10" label="Sair" width="60" click="sair()"/>
          <mx:TextInput x="417" y="10" id="id1"/>
          <mx:TextInput x="417" y="40" id="cm1"/>
          <mx:Button x="585" y="12" label="Gravar" click="insertFile(id1.text, cm1.text)"/>
          <mx:Label x="291" y="12" text="Identificação:" width="105"/>
          <mx:Label x="291" y="42" text="Caminho Completo:" width="118"/>
          <mx:Label x="615" y="42" width="173" id="lb1"/>
          <mx:HTML id="pdfFile" width="800" height="520" y="79"/>
    </mx:WindowedApplication>

    Bob, Here's some ActionScript code for saving the byte array data to temporary file. (In this code, pdfData is a ByteArray object containing the PDF data.)
    var tempFile:File = File.createTempFile();
    var stream:FileStream = new FileStream();
    stream.open(tempFile, FileMode.WRITE);
    stream.writeBytes(pdfData);
    stream.close();
    Next you can load the file into your Flex HTML control (represented as html in the following code):
    html.location = tempFile.url;
    Here's more information on reading and writing files:
    http://help.adobe.com/en_US/AIR/1.5/devappsflex/WS5b3ccc516d4fbf351e63e3d118666ade46-7dc2. html (for Flex developers)
    http://help.adobe.com/en_US/AIR/1.5/devappsflash/WS5b3ccc516d4fbf351e63e3d118666ade46-7dc2 .html (for Flash developers)
    http://help.adobe.com/en_US/AIR/1.5/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7dc2. html (for Ajax developers)

Maybe you are looking for

  • JDeveloper 10.1.3.4: text-align for table column has no effect

    Hi, I am using JDeveloper 10.1.3.4. In a tabe I have a column that displays numbers, which are left-aligned by default: Applied $50.00 $2,160.00 $50.00 $2,260.00I want to have them aligned to the right to look neater: Applied          $50.00       $2

  • Recovery to "out-of-the-box"

    I need to do a recovery on my L300-EZ1502. I followed the instructions in the manual but the Recovery Wizard screen did not come up. If things don't happen like they are supposed to according to the instruction manual, I'm lost. Help!

  • Exceptional aggregation on Non *** KF - Aggregation issue in the Query

    Hi Gurus, Can anyone tell me a solution for the below scenario. I am using BW 3.5 front end. I have a non cumulative KF coming from my Stock cube and Pricing KF coming from my Pricing Cube.(Both the cubes are in Multiprovider and my Query is on top o

  • SMS forwarding, send to many and ability to receive business card

    Does anyone know if apple is going to fix these problems? Thought that by now it should have been released already with software upgrade as these are basic functions in a mobile!

  • IPad 1 - iOS6

    Hi there, I would like to know why Apple doesn't allow old devices like iPad1, iPhone3G (and older) to upgrade to iOS6. Thanks.