public Map<String,String> getUserAgent(HttpServletRequest req){ Map<String,String> Sys= new HashMap<String, String>(); String ua = req.getHeader("User-Agent").toLowerCase(); String s; String msieP = "msie ([\\d.]+)"; String firefoxP = "firefox\\/([\\d.]+)"; String chromeP = "chrome\\/([\\d.]+)"; String operaP = "opera.([\\d.]+)/)"; String safariP = "version\\/([\\d.]+).*safari"; Pattern pattern = Pattern.compile(msieP); Matcher mat = pattern.matcher(ua); if(mat.find()){ s=mat.group(); Sys.put("type", "ie"); Sys.put("version", s.split(" ")[1]); return Sys; } pattern = Pattern.compile(firefoxP); mat=pattern.matcher(ua); if(mat.find()){ s=mat.group(); System.out.println(s); Sys.put("type", "firefox"); Sys.put("version", s.split("/")[1]); return Sys; } pattern = Pattern.compile(chromeP); mat=pattern.matcher(ua); if(mat.find()){ s=mat.group(); Sys.put("type", "chrome"); Sys.put("version", s.split("/")[1]); return Sys; } pattern = Pattern.compile(operaP); mat=pattern.matcher(ua); if(mat.find()){ s=mat.group(); Sys.put("type", "opera"); Sys.put("version", s.split("\\.")[1]); return Sys; } pattern = Pattern.compile(safariP); mat=pattern.matcher(ua); if(mat.find()){ s=mat.group(); Sys.put("type", "safari"); Sys.put("version", s.split("/")[1].split(".")[0]); return Sys; } return Sys; }
网上找的一段js获取,原理都是一样,通过浏览器的 User-Agent 获得,可以自由扩展:
/** * 获取浏览器类型及 版本 * @returns 返回对象,两属性,type:表示浏览器类型,version:表示版本 {___anonymous25556_25557} */ function getUserAgent(){ var Sys={}; var ua=navigator.userAgent.toLowerCase(); var s; (s=ua.match(/msie ([\d.]+)/))?(Sys['type']='ie',Sys['version']=s[1]): (s=ua.match(/firefox\/([\d.]+)/))?(Sys['type']='firefox',Sys['version']=s[1]): (s=ua.match(/chrome\/([\d.]+)/))?(Sys['type']='chrome',Sys['version']=s[1]): (s=ua.match(/opera.([\d.]+)/))?(Sys['type']='opera',Sys['version']=s[1]): (s=ua.match(/version\/([\d.]+).*safari/))?(Sys['type']='safari',Sys['version']=s[1]):0; return Sys; }
相关推荐
通过JavaScript可以实现对浏览器类型及版本的判断。 #### 1.2 实现原理 此段代码通过读取`navigator.userAgent`属性来获取浏览器信息,并通过正则表达式匹配来判断浏览器类型和版本。具体来说: - **`navigator....
JavaScript 判断打开网页的浏览器类型与版本 在 JavaScript 中判断浏览器的类型和版本是一个非常重要的知识点,特别是在开发 web 应用程序时,需要根据不同的浏览器和版本进行不同的操作。下面我们将详细介绍 ...
Java实现判断浏览器版本与类型简单代码示例 在Web开发中,判断浏览器版本和类型是非常重要的,以便能够提供更好的用户体验。今天,我们将介绍如何使用Java来实现判断浏览器版本和类型的简单代码示例。 首先,让...
由于是纯Java实现,这意味着它并不依赖于用户计算机上已安装的特定浏览器版本,而是自带有独立的渲染引擎。 在描述中提到的“内嵌火狐核心浏览器”,意味着这款JAVA浏览器采用了Mozilla Firefox的Gecko渲染引擎。...
你可以指定浏览器的类型,例如选择使用WebKit引擎。 3. **设置浏览器容器**:将`Browser`实例放入Swing的容器,如`JPanel`或`JSplitPane`,以在Swing应用中显示。 4. **加载网页**:调用`Browser`对象的`setUrl()`...
在Java编程语言中,获取系统IP地址是一项常见的任务,尤其在开发网络应用或者与浏览器交互时更为重要。本文将深入探讨如何在Java中获取本地主机的IP地址,并结合浏览器环境进行详细阐述。 首先,让我们理解IP地址的...
在本“Java网页浏览器课程设计”项目中,我们将探讨如何使用Java编程语言构建一个基本的Web浏览器。这个项目不仅提供了一种实践Java技术的方式,也是理解网络通信和用户界面设计的良好起点。以下是一些关键的知识点...
### 获取当前浏览器的类型及乱码问题 在Web开发中,了解用户使用的浏览器类型对于提供兼容性和优化用户体验至关重要。此外,处理中文等非ASCII字符集时可能会遇到乱码问题,这对提升网站的国际化水平提出了挑战。 ...
在Java编程中,有时我们需要实现一个功能,即通过程序来打开本地计算机的默认浏览器来访问特定的URL。这个任务可以通过使用Java的`java.awt.Desktop`类来完成,该类提供了一种与操作系统进行交互的方法,包括打开...
JDBC是Java平台中的一个重要组件,由Sun Microsystems(现已被Oracle收购)制定并维护,为Java程序员提供了一种标准的方式来访问不同类型的数据库系统。 在这款数据库浏览器中,你可以执行SQL查询、浏览数据表、...
Java内嵌浏览器JxBrowser是一款强大的工具,它允许开发者在Java应用程序中集成Web浏览器功能,其内核基于Chromium,因此能良好地兼容大部分基于现代Web标准的前端框架,如React、Vue、Angular等。本教程将深入讲解...
在Java编程领域,制作一个HTML浏览器是一项挑战性的任务,它涉及到对网络协议的理解、解析HTML文档、渲染页面以及处理用户交互等多个方面的知识。这个项目可以帮助开发者深入理解Web工作原理,并提升其Java技能。 ...
Java编程语言以其强大的功能和广泛的应用领域而闻名,它可以用于创建各种类型的应用程序,包括桌面应用、移动应用、服务器端应用以及我们今天讨论的主题——浏览器小程序。这些小程序通常是在Java环境中运行,提供一...
`User-Agent`是一个包含用户浏览器类型、版本、操作系统、设备等详细信息的字符串,通常由浏览器发送到服务器。 描述中提到的"通过request.getHeader("User-Agent")信息返回用户浏览器版本和使用操作系统版本",是...
用JavaiScript里的属性来获取浏览器的版本,屏幕的分辨率,操作系统。
解决chrome浏览器中点击链接,如果是浏览器可识别的文件类型,浏览器会自动打开而不是弹出下载框的方案
这个Java程序可能包含了分析UA字符串的类和方法,如`parseUserAgent()`,其中会细分出浏览器类型、版本、操作系统等信息。 PHP也是Web开发中常用的语言,它的实现方式可能包括使用内置的`$_SERVER['...
在本文中,我们将深入探讨如何使用Java编程语言来实现一个简单的浏览器功能。Java以其跨平台性和丰富的类库,成为开发这种应用的理想选择。NETBEANS是一个流行的集成开发环境(IDE),它提供了用户友好的界面和强大...
在Java编程中,有时我们需要模拟浏览器发送HTTP请求,例如调用外部接口或API。`HttpURLConnection`是Java标准库提供的一种轻量级的HTTP客户端,它允许我们在后台代码中发送GET和POST请求。本篇文章将深入讲解如何...
在IT行业中,开发一个“JAVA文件夹浏览器”是一项常见的任务,尤其对于那些使用Eclipse集成开发环境的开发者来说。这个项目旨在实现一个功能完善的文件系统浏览工具,允许用户在Eclipse环境中遍历文件夹结构,并能...