中国软件杯-简易新闻发布端(拖拽分析功能)
来源:互联网 发布:软件开发年度工作计划 编辑:程序博客网 时间:2024/06/04 01:07
整个系统分为3个模块(PC端,安卓端,Service端)
采用了内存数据库,异步传输等方式提高相应速度
PC端要求拖拽然后直接分析,下面分享一下PC端界面的实现代码(拖拽分析功能)
package com.gdoucy.unit;import java.awt.Color;import java.awt.Toolkit;import java.awt.datatransfer.DataFlavor;import java.awt.dnd.DnDConstants;import java.awt.dnd.DropTarget;import java.awt.dnd.DropTargetAdapter;import java.awt.dnd.DropTargetDropEvent;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.util.ArrayList;import java.util.List;import java.util.regex.Matcher;import java.util.regex.Pattern;import javax.swing.JFrame;import com.gdoucy.daomain.NewsManager;import com.gdoucy.daomain.Pictrue;import com.gdoucy.daomain.WindowManager;import com.gdoucy.windows.Myphone;public class MyJFrame extends JFrame{static public DropTarget dropt;public MyJFrame(){//myframe.setUndecorated(true);this.setLayout(null);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setSize(WindowManager.getWindowManager().getWindow_width(),WindowManager.getWindowManager().getWindow_height());this.setResizable(false);setBackground(Color.white);double width = Toolkit.getDefaultToolkit().getScreenSize().getWidth();double height = Toolkit.getDefaultToolkit().getScreenSize().getHeight();setLocation( (int) (width - getWidth()) / 2,(int) (height - getHeight()) / 2);drag();}public void drag()//定义的拖拽方法 { String path; //panel表示要接受拖拽的控件 dropt = new DropTarget(this, DnDConstants.ACTION_COPY_OR_MOVE, new DropTargetAdapter() { @Override public void drop(DropTargetDropEvent dtde)//重写适配器的drop方法 { try { if (dtde.isDataFlavorSupported(DataFlavor.javaFileListFlavor))//如果拖入的文件格式受支持 { dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);//接收拖拽来的数据 List<File> list = (List<File>) (dtde.getTransferable().getTransferData(DataFlavor.javaFileListFlavor)); String path=""; for(File file:list) path+=file.getAbsolutePath(); // JOptionPane.showMessageDialog(null, path); String url = read(path); dtde.dropComplete(true);//指示拖拽操作已完成 NewsManager.getNewsManager().setUrl(url); NewsManager.getNewsManager().setPictrues(new ArrayList<Pictrue>()); //NewsManager.getNewsManager().setTitle("测试标题"); //NewsManager.getNewsManager().setText("测试内容"); //此处开始分析 Myphone.getMyphone().update("no"); } else { dtde.rejectDrop();//否则拒绝拖拽来的数据 } } catch (Exception e) { e.printStackTrace(); } } }); } public String read(String path) {BufferedReader input = null;String content="";String url="";try {FileReader in = new FileReader(path);input = new BufferedReader(in);String ss;try {while ((ss = input.readLine()) != null) {content =content+ ss;}} catch (IOException e) {// TODO 自动生成的 catch 块e.printStackTrace();}in.close();input.close();} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}//url=content.replace(".*\bURL=", "");Pattern pattern = Pattern.compile("http://.*");Matcher matcher = pattern.matcher(content);while(matcher.find()){//System.out.println(matcher.group().toString); //结果url=matcher.group();}System.out.println("------------------------------------");System.out.println(url);return url;} public void read(){ }}
0 0
- 中国软件杯-简易新闻发布端(拖拽分析功能)
- 中国软件杯-简易新闻发布端(Android XML分析)
- 《简易新闻》源码分析
- javaweb新闻发布系统(功能齐全)
- 新闻发布系统--分析报告(2)
- 使用mvc模型实现简易新闻客户端功能(本地)
- JSP:简易新闻发布系统(附数据库)
- 新闻发布系统--分析报告
- JAVA_WEB项目(结合Servlet+jsp+ckEditor编辑器+jquery easyui技术)实现新闻发布管理系统第三篇:新闻发布,新闻修改,新闻删除功能的实现
- 新闻文章发布系统功能说明
- 牛腩新闻发布系统---真分页功能
- 简易记事本实现与分析(一)功能结构梳理
- 实现新闻发布系统(三)二级新闻发布
- 牛腩新闻发布系统 (6) 在线浮动的客服功能
- 简易新闻客户端(生成列表)
- 信息产业部发布中国软件业务收入前百家企业名单
- 中国软件测试现状调查报告发布啦!!
- 新闻发布
- Servlet
- 数据库HANG类故障
- 安卓理解之Activity
- JAVA File类 分析(四)
- uva 714 - Copying Books(二分+贪心)
- 中国软件杯-简易新闻发布端(拖拽分析功能)
- 初始化失败_Destroying singletons
- winxp系统任务栏消失之解决
- SDK Build Tools revision (19.0.3) is too low for project Minimum required is 19.1.0
- PHP的instanceof关键字
- log4jWARN Please initialize the log4j system properly解决办法
- java枚举在android项目应用
- objc@interface的设计:隐藏继承关系中的私有接口
- RTP payload type