亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? filebrowser.java

?? 改文件實現了手機pim的基本功能
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/*
 *
 * Copyright (c) 2007, Sun Microsystems, Inc.
 *
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *  * Neither the name of Sun Microsystems nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
package example.fc;

import java.io.*;

import java.util.*;

import javax.microedition.io.*;
import javax.microedition.io.file.*;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;


/**
 * Demonstration MIDlet for File Connection API. This MIDlet implements simple
 * file browser for the filesystem available to the J2ME applications.
 *
 */
public class FileBrowser extends MIDlet implements CommandListener {
    private static final String[] attrList = { "Read", "Write", "Hidden" };
    private static final String[] typeList = { "Regular File", "Directory" };
    private static final String[] monthList =
        { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };

    /* special string denotes upper directory */
    private static final String UP_DIRECTORY = "..";

    /* special string that denotes upper directory accessible by this browser.
     * this virtual directory contains all roots.
     */
    private static final String MEGA_ROOT = "/";

    /* separator string as defined by FC specification */
    private static final String SEP_STR = "/";

    /* separator character as defined by FC specification */
    private static final char SEP = '/';
    private String currDirName;
    private Command view = new Command("View", Command.ITEM, 1);
    private Command creat = new Command("New", Command.ITEM, 2);

    //add delete file functionality
    private Command delete = new Command("Delete", Command.ITEM, 3);
    private Command creatOK = new Command("OK", Command.OK, 1);
    private Command prop = new Command("Properties", Command.ITEM, 2);
    private Command back = new Command("Back", Command.BACK, 2);
    private Command exit = new Command("Exit", Command.EXIT, 3);
    private TextField nameInput; // Input field for new file name
    private ChoiceGroup typeInput; // Input field for file type (regular/dir)
    private Image dirIcon;
    private Image fileIcon;
    private Image[] iconList;

    public FileBrowser() {
        currDirName = MEGA_ROOT;

        try {
            dirIcon = Image.createImage("/icons/doc.png");
        } catch (IOException e) {
            dirIcon = null;
        }

        try {
            fileIcon = Image.createImage("/icons/txt.png");
        } catch (IOException e) {
            fileIcon = null;
        }

        iconList = new Image[] { fileIcon, dirIcon };
    }

    public void startApp() {
        try {
            showCurrDir();
        } catch (SecurityException e) {
            Alert alert =
                new Alert("Error", "You are not authorized to access the restricted API", null,
                    AlertType.ERROR);
            alert.setTimeout(Alert.FOREVER);

            Form form = new Form("Cannot access FileConnection");
            form.append(new StringItem(null,
                    "You cannot run this MIDlet with the current permissions. " +
                    "Sign the MIDlet suite, or run it in a different security domain"));
            form.addCommand(exit);
            form.setCommandListener(this);
            Display.getDisplay(this).setCurrent(alert, form);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public void pauseApp() {
    }

    public void destroyApp(boolean cond) {
        notifyDestroyed();
    }

    public void commandAction(Command c, Displayable d) {
        if (c == view) {
            List curr = (List)d;
            final String currFile = curr.getString(curr.getSelectedIndex());
            new Thread(new Runnable() {
                    public void run() {
                        if (currFile.endsWith(SEP_STR) || currFile.equals(UP_DIRECTORY)) {
                            traverseDirectory(currFile);
                        } else {
                            // Show file contents
                            showFile(currFile);
                        }
                    }
                }).start();
        } else if (c == prop) {
            List curr = (List)d;
            String currFile = curr.getString(curr.getSelectedIndex());

            showProperties(currFile);
        } else if (c == creat) {
            createFile();
        } else if (c == creatOK) {
            String newName = nameInput.getString();

            if ((newName == null) || newName.equals("")) {
                Alert alert =
                    new Alert("Error!", "File Name is empty. Please provide file name", null,
                        AlertType.ERROR);
                alert.setTimeout(Alert.FOREVER);
                Display.getDisplay(this).setCurrent(alert);
            } else {
                // Create file in a separate thread and disable all commands
                // except for "exit"
                executeCreateFile(newName, typeInput.getSelectedIndex() != 0);
                Display.getDisplay(this).getCurrent().removeCommand(creatOK);
                Display.getDisplay(this).getCurrent().removeCommand(back);
            }
        } else if (c == back) {
            showCurrDir();
        } else if (c == exit) {
            destroyApp(false);
        } else if (c == delete) {
            List curr = (List)d;
            String currFile = curr.getString(curr.getSelectedIndex());
            executeDelete(currFile);
        }
    }

    void delete(String currFile) {
        if (!currFile.equals(UP_DIRECTORY)) {
            if (currFile.endsWith(SEP_STR)) {
                checkDeleteFolder(currFile);
            } else {
                deleteFile(currFile);
                showCurrDir();
            }
        } else {
            Alert cantDeleteFolder =
                new Alert("Error!",
                    "Can not delete The up-directory (..) " + "symbol! not a real folder", null,
                    AlertType.ERROR);
            cantDeleteFolder.setTimeout(Alert.FOREVER);
            Display.getDisplay(this).setCurrent(cantDeleteFolder);
        }
    }

    private void executeDelete(String currFile) {
        final String file = currFile;
        new Thread(new Runnable() {
                public void run() {
                    delete(file);
                }
            }).start();
    }

    private void checkDeleteFolder(String folderName) {
        try {
            FileConnection fcdir =
                (FileConnection)Connector.open("file://localhost/" + currDirName + folderName);
            Enumeration content = fcdir.list("*", true);

            //only empty directory can be deleted
            if (!content.hasMoreElements()) {
                fcdir.delete();
                showCurrDir();
            } else {
                Alert cantDeleteFolder =
                    new Alert("Error!", "Can not delete The non-empty folder: " + folderName, null,
                        AlertType.ERROR);
                cantDeleteFolder.setTimeout(Alert.FOREVER);
                Display.getDisplay(this).setCurrent(cantDeleteFolder);
            }
        } catch (IOException ioe) {
            System.out.println(currDirName + folderName);

            ioe.printStackTrace();
        }
    }

    //Starts creatFile with another Thread
    private void executeCreateFile(final String name, final boolean val) {
        new Thread(new Runnable() {
                public void run() {
                    createFile(name, val);
                }
            }).start();
    }

    /**
     * Show file list in the current directory .

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91同城在线观看| 国产精品美女久久久久久久 | 精品一区精品二区高清| 国产成人精品亚洲午夜麻豆| 欧美日韩第一区日日骚| 国产欧美一区二区精品忘忧草 | 一区二区欧美精品| 国产激情视频一区二区在线观看 | 精品视频在线免费| 国产精品久久久久久久午夜片| 日本欧美一区二区| 91精品办公室少妇高潮对白| 国产午夜一区二区三区| 久久精品国产精品青草| 欧美三区在线观看| 中文字幕一区二区三区不卡 | 欧美怡红院视频| 日韩美女视频一区| 成人高清伦理免费影院在线观看| 欧美大片国产精品| 婷婷开心久久网| 欧美日韩一区二区三区不卡| 亚洲日穴在线视频| 成人app软件下载大全免费| 久久蜜桃av一区精品变态类天堂 | 26uuu国产一区二区三区| 日产国产欧美视频一区精品| 欧美色图激情小说| 亚洲成a人v欧美综合天堂下载| 日本韩国欧美一区| 亚洲一区二区三区中文字幕| 欧美性色综合网| 亚洲免费观看高清完整版在线| 国产精品一品二品| 中文字幕av不卡| 成人国产精品视频| 亚洲三级小视频| 色婷婷亚洲婷婷| 亚洲3atv精品一区二区三区| 欧美猛男gaygay网站| 天天综合网 天天综合色| 欧美女孩性生活视频| 秋霞av亚洲一区二区三| 欧美v国产在线一区二区三区| 韩国成人福利片在线播放| 26uuu色噜噜精品一区二区| 丁香婷婷综合色啪| 亚洲黄色av一区| 欧美天堂一区二区三区| 人禽交欧美网站| 久久精品欧美日韩| 99国产精品99久久久久久| 亚洲精品国产a久久久久久 | 99精品国产一区二区三区不卡| 中文字幕亚洲在| 欧美日韩激情在线| 久草精品在线观看| 中文字幕一区二区三区蜜月| 在线观看91视频| 国产一区二区91| 亚洲精品视频免费看| 欧美一区午夜视频在线观看| 国产在线麻豆精品观看| 亚洲天堂福利av| 91精品国产色综合久久久蜜香臀| 久久99精品国产麻豆婷婷| 国产精品久久久久久久久免费丝袜| 欧洲一区在线观看| 国产呦萝稀缺另类资源| 一区二区三区精品视频在线| 精品精品国产高清a毛片牛牛| 成人福利电影精品一区二区在线观看| 亚洲久草在线视频| 久久网这里都是精品| 在线亚洲一区二区| 国产成人午夜99999| 亚洲国产中文字幕在线视频综合| 欧美电影免费提供在线观看| 色国产综合视频| 国产91精品一区二区麻豆亚洲| 亚洲国产精品一区二区久久恐怖片| 久久蜜桃av一区二区天堂| 欧美日韩国产一级片| 暴力调教一区二区三区| 美女久久久精品| 亚洲国产一区视频| 国产精品国产三级国产| 欧美videos中文字幕| 欧美人动与zoxxxx乱| 色老综合老女人久久久| 成人禁用看黄a在线| 激情综合网激情| 婷婷夜色潮精品综合在线| 亚洲情趣在线观看| 一区二区三区国产豹纹内裤在线| 欧美一级国产精品| 国产揄拍国内精品对白| 亚洲精品免费电影| 国产精品视频免费| 久久久亚洲综合| 91麻豆精品国产91久久久 | 国产成人精品免费看| 另类小说图片综合网| 视频一区欧美日韩| 亚洲影院免费观看| 亚洲综合免费观看高清完整版| 一区在线观看视频| 一区在线观看免费| 中文字幕一区二区三区四区不卡 | 成人激情图片网| 国产精品99久| 高清不卡在线观看av| 成人午夜av电影| 成人不卡免费av| 成人av影院在线| 91在线观看高清| 色悠久久久久综合欧美99| 色婷婷av一区二区三区软件| 色综合久久天天| 欧美在线视频不卡| 欧美日韩亚洲国产综合| 欧美高清你懂得| 日韩免费一区二区| 国产亚洲美州欧州综合国| 日本一区二区三区视频视频| 1000精品久久久久久久久| 亚洲男同性恋视频| 天天综合天天综合色| 美美哒免费高清在线观看视频一区二区| 蜜桃免费网站一区二区三区| 久久国产生活片100| 国产成人av一区二区| 色综合久久久久综合体| 欧美日韩国产一二三| 精品国产91久久久久久久妲己 | 国产精品91一区二区| 99久久久久久99| 欧美图区在线视频| 精品三级在线看| 国产精品久99| 午夜精品久久久久久不卡8050| 男男成人高潮片免费网站| 国产精品一级二级三级| 99久久综合国产精品| 欧美日韩国产片| 久久久国际精品| 亚洲精品成a人| 狠狠色丁香婷婷综合| 懂色av一区二区三区免费看| 在线观看成人小视频| 精品国产精品一区二区夜夜嗨| 国产精品理伦片| 日韩国产欧美在线视频| gogo大胆日本视频一区| 欧美一级夜夜爽| 亚洲美女视频在线观看| 国内成人精品2018免费看| 欧美亚洲动漫精品| 久久嫩草精品久久久精品| 亚洲成人午夜影院| 不卡一区二区三区四区| 欧美成人一级视频| 有码一区二区三区| 成人亚洲一区二区一| 日韩欧美国产麻豆| 亚洲成a人片在线不卡一二三区 | 欧美日韩亚洲综合在线| 国产精品水嫩水嫩| 激情av综合网| 欧美巨大另类极品videosbest| 国产精品私人自拍| 经典三级在线一区| 欧美日韩高清在线| 亚洲欧美日韩国产成人精品影院| 九九视频精品免费| 91麻豆精品国产无毒不卡在线观看| 国产精品夫妻自拍| 国产成人精品影院| 久久美女艺术照精彩视频福利播放| 视频一区中文字幕国产| 91福利视频久久久久| 国产精品伦理一区二区| 国产酒店精品激情| 久久亚洲捆绑美女| 紧缚奴在线一区二区三区| 91精品国产全国免费观看| 午夜不卡av在线| 欧美三级在线视频| 亚洲一区二区av在线| 91亚洲国产成人精品一区二区三| 中文字幕欧美区| 成人亚洲一区二区一| 国产欧美一区二区三区鸳鸯浴| 国产一二精品视频| 国产欧美一区二区三区沐欲| 国产精品白丝av| 国产精品久久影院| 99国产精品视频免费观看| 最新国产の精品合集bt伙计| 99视频精品在线|