⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stringpager.java

📁 这是基于 XLoadTree 的一个强大功能的展示的例子, 文件个头也不大, 主要功能集中在 Web 前台. 最终目标是实现一个易于使用的像 Windows 资源管理器那样管理远程 JSP
💻 JAVA
字号:
/*
 * @(#)StringPager.java 1.00 2004-10-10
 *
 * Copyright 2004 . All rights reserved.
 * PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */
package beansoft.jsp;

/**
 * StringPager, 字符串分页.
 * 
 * @author beansoft
 * @version 1.00 2004-10-10
 */
public class StringPager {

    /** 当前页码数 */
    private int currentPage = 1;

    /** 需要分页的长字符串 */
    private String text;

    /** 每页显示字符数, 默认为 200 */
    private int sizePerPage = 200;

    /** 总页数 */
    private int totalPage;

    /**
     *  
     */
    public StringPager() {
    }

    /**
     * 返回当前页的字符串.
     * @return
     */
    public String getCurrentPagedText() {
        try {
            if(getCurrentPage() < getTotalPage()) {
                return getText().substring((getCurrentPage() - 1) * getSizePerPage(),
                        getCurrentPage() * getSizePerPage());
            } else if(getTotalPage() > 0) {
                return getText().substring((getCurrentPage() - 1) * getSizePerPage());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

    /**
     * @return Returns the 当前页码数.
     */
    public int getCurrentPage() {
        if(currentPage <= 0) currentPage = 1;
        
        return currentPage;
    }

    /**
     * 设置当前页码, 从 1 开始.
     * 
     * @param currentPage
     *            The 当前页码数 to set.
     */
    public void setCurrentPage(int currentPage) {
        if (currentPage <= 0) {
            currentPage = 1;
        }
        this.currentPage = currentPage;
    }

    /**
     * @return Returns the 总页码数, 如果没有数据, 就返回 1.
     */
    public int getTotalPage() {
        if(getText() == null) totalPage = 0;
        totalPage = (int) Math.ceil(1.0 * getText().length() / getSizePerPage()); // 总页面数
        
        if (totalPage == 0)
            totalPage = 1;
        
        return totalPage;
    }

    /**
     * @param totalPage
     *            The totalPage to set.
     */
    public void setTotalPage(int totalPage) {
        this.totalPage = totalPage;
    }

    public static void main(String[] args) {
        StringPager pager = new StringPager();
        pager.setSizePerPage(5);
        pager.setText("12345678901");
        pager.setCurrentPage(2);
        
        System.out.println(pager.getTotalPage());
        System.out.println(pager.getCurrentPagedText());
    }

    /**
     * @return Returns the 每页显示字符数.
     */
    public int getSizePerPage() {
        return sizePerPage;
    }

    /**
     * @param sizePerPage
     *            The 每页显示字符数 to set.
     */
    public void setSizePerPage(int sizePerPage) {
        this.sizePerPage = sizePerPage;
    }

    /**
     * @return Returns the 需要分页的长字符串.
     */
    public String getText() {
        return text;
    }

    /**
     * @param text
     *            The 需要分页的长字符串 to set.
     */
    public void setText(String text) {
        this.text = text;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -