轻松记录您
灵感和创意

markdown语法自动生成

每次写表格很麻烦,于是我写了个代码来生成表格的Markdown语句,使用的时候只要输入行和列就行了。

package markdowntools;

import java.util.Scanner;
import clipboard.util.SysClipboardUtil;

public class MarkDownTableCode
{
    public static void main(String[] args)
    {
        Scanner scanner=new Scanner(System.in);
        System.out.println("############    markdown表格生成器    ############");
        System.out.print("输入行数:");
        int rows=scanner.nextInt();
        System.out.print("输入列数:");
        int cols=scanner.nextInt();
        System.out.println("############        运行结果:        ############");
        String head=tableHead(cols);
        String style= tableStyle(cols);
        //打印表格内容:
        String body=tableBody(cols, rows);
//      System.out.println("----------------------------------------");
        System.out.println(head+style+body);
        //把生成的markdown代码写入到系统剪贴板中
        SysClipboardUtil.setSysClipboardText(head+style+body);
    }
    /**   
     * @param cols  
     * @return 
     */  
    public static String tableHead(int cols)
    {
        StringBuilder buf=new StringBuilder();
        //打印表格头
        for(int j=1;j<=cols;j++)
        {

//          System.out.print("|标题"+j);
            buf.append("|标题"+j);
        }
//      System.out.println("|");//标题行结束
        buf.append("|\n");
        return buf.toString();
    }
    /**
     * 生成默认格式的markdown表格对齐样式。
     * @param cols 表格的列数
     * @return markdown表格对齐样式语句字符串。
     */
    public static String tableStyle(int cols)
    {
        StringBuilder buf=new StringBuilder();
        //打印表格样式使用默认
        for(int j=1;j<=cols;j++)
        {
//          System.out.print("|-");
            buf.append("|-");
        }
//      System.out.println("|");//标题行结束
        buf.append("|\n");
        return buf.toString();
    }
    /**
     * 生成表格体markdown语句。
     * @param cols 表格的列数
     * @param rows 表格的行数
     * @return 带编号的表格体markdown语句,表格体第一行编号1,第二行编号2.
     */
    public static String tableBody(int cols, int rows)
    {
        StringBuilder buf=new StringBuilder();
        for(int i=0;i<rows;i++)
        {
            for(int j=1;j<=cols+1;j++)
            {
//              System.out.print("|");
                buf.append("|");
                if(j==1)
                {
//                  System.out.print(i+1);
                    buf.append((i+1));
                }

            }
//          System.out.println();
            buf.append("\n");
        }
        return buf.toString();
    }
}

现在来生成一个3行4列的表格:

剪贴板中的代码(我这里粘贴过来了):

|标题1|标题2|标题3|标题4|
|-|-|-|-|
|1||||
|2||||
|3||||

效果:

未经允许不得转载:坚果之云 Markdown » markdown语法自动生成
分享到: 更多 (0)

坚果云Markdown轻松记录您 灵感和创意

坚果云Markdown下载坚果云Markdown介绍