「电脑java蓝牙」java调用蓝牙程序

博主:adminadmin 2022-12-01 06:19:08 56

本篇文章给大家谈谈电脑java蓝牙,以及java调用蓝牙程序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java系统可以连接无线蓝牙么!

当然可以,前提是有蓝牙硬件模块的设备;

比如android系统手机,若手机支持蓝牙,则完全可以连接蓝牙操作。

怎么通过java接受蓝牙传递过来的数据

//服务端:server.cpp

#include stdio.h

#include winsock2.h    

    

#pragma comment(lib,"ws2_32.lib")    

    

int main(int argc, char* argv[])    

{    

    //初始化WSA    

    WORD sockVersion = MAKEWORD(2,2);    

    WSADATA wsaData;    

    if(WSAStartup(sockVersion, wsaData)!=0)    

    {    

        return 0;    

    }    

    

    //创建套接字    

    SOCKET slisten = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);    

    if(slisten == INVALID_SOCKET)    

    {    

        printf("socket error !");    

        return 0;    

    }    

    

    //绑定IP和端口    

    sockaddr_in sin;    

    sin.sin_family = AF_INET;    

    sin.sin_port = htons(8888);    

    sin.sin_addr.S_un.S_addr = INADDR_ANY;     

    if(bind(slisten, (LPSOCKADDR)sin, sizeof(sin)) == SOCKET_ERROR)    

    {    

        printf("bind error !");    

    }    

    

    //开始监听    

    if(listen(slisten, 5) == SOCKET_ERROR)    

    {    

        printf("listen error !");    

        return 0;    

    }    

    

    //循环接收数据    

    SOCKET sClient;    

    sockaddr_in remoteAddr;    

    int nAddrlen = sizeof(remoteAddr);    

    char revData[255];     

    while (true)    

    {    

        printf("等待连接...\n");    

        sClient = accept(slisten, (SOCKADDR *)remoteAddr, nAddrlen);    

        if(sClient == INVALID_SOCKET)    

        {    

            printf("accept error !");    

            continue;    

        }    

        printf("接受到一个连接:%s \r\n", inet_ntoa(remoteAddr.sin_addr));    

            

        //接收数据    

        int ret = recv(sClient, revData, 255, 0);           

        if(ret  0)    

        {    

            revData[ret] = 0x00;    

            printf(revData);    

        }    

    

        //发送数据    

        const char * sendData = "你好,TCP客户端!\n";    

        send(sClient, sendData, strlen(sendData), 0);    

        closesocket(sClient);    

    }    

        

    closesocket(slisten);    

    WSACleanup();    

    return 0;    

}   

//客户端:client.cpp

#includeWINSOCK2.H  

#includeSTDIO.H  

#includeiostream  

#includecstring  

using namespace std;  

#pragma comment(lib, "ws2_32.lib")  

  

int main()  

{  

    WORD sockVersion = MAKEWORD(2, 2);  

    WSADATA data;  

    if(WSAStartup(sockVersion, data)!=0)  

    {  

        return 0;  

    }  

    while(true){  

        SOCKET sclient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);  

        if(sclient == INVALID_SOCKET)  

        {  

            printf("invalid socket!");  

            return 0;  

        }  

          

        sockaddr_in serAddr;  

        serAddr.sin_family = AF_INET;  

        serAddr.sin_port = htons(8888);  

        serAddr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");  

        if(connect(sclient, (sockaddr *)serAddr, sizeof(serAddr)) == SOCKET_ERROR)  

        {  //连接失败   

            printf("connect error !");  

            closesocket(sclient);  

            return 0;  

        }  

          

        string data;  

        cindata;  

        const char * sendData;  

        sendData = data.c_str();   //string转const char*   

        //char * sendData = "你好,TCP服务端,我是客户端\n";  

        send(sclient, sendData, strlen(sendData), 0);  

        //send()用来将数据由指定的socket传给对方主机  

        //int send(int s, const void * msg, int len, unsigned int flags)  

        //s为已建立好连接的socket,msg指向数据内容,len则为数据长度,参数flags一般设0  

        //成功则返回实际传送出去的字符数,失败返回-1,错误原因存于error   

          

        char recData[255];  

        int ret = recv(sclient, recData, 255, 0);  

        if(ret0){  

            recData[ret] = 0x00;  

            printf(recData);  

        }   

        closesocket(sclient);  

    }  

      

      

    WSACleanup();  

    return 0;  

      }

什么是蓝牙?什么是Java?它们具体应用举例。

什么是蓝牙?

蓝牙(Bluetooth)是由东芝、爱立信、IBM、Intel和诺基亚于1998年5月共同提出的近距离无线数据通讯技术标准。它能够在10米的半径范围内实现单点对多点的无线数据和声音传输,其数据传输带宽可达1Mbps。通讯介质为频率在2.402GHz到2.480GHz之间的电磁波。

蓝牙通讯技术的特点

■蓝牙工作在全球开放的2.4GHz ISM(即工业、科学、医学)频段;

■使用跳频频谱扩展技术,把频带分成若干个跳频信道(hop channel),在一次连接中,无线电收发器按一定的码序列不断地从一个信道“跳”到另一个信道;

■一台蓝牙设备可同时与其它七台蓝牙设备建立连接;

■数据传输速率可达1Mbit/s;

■低功耗、通讯安全性好;

■在有效范围内可越过障碍物进行连接,没有特别的通讯视角和方向要求;

■支持语音传输;

■组网简单方便

蓝牙通讯技术的用途

蓝牙技术是一种新兴的技术,尚未投入广泛应用,目前许多蓝牙设备还处于实验室试验阶段。但可以肯定的是现在多数具有红外无线数据通讯功能的设备,在将来一样可以使用蓝牙技术来实现无线连接。同时蓝牙技术的网络特点和语音传输技术使它还可以实现红外技术无法实现的某些特定功能,如无线电话、多台设备组网等等。

厂家和消费者的认同度

蓝牙技术已获得了两千余家企业的响应,从而拥有了巨大的开发和生产能力。蓝牙已拥有了很高的知名度,广大消费者对这一技术很有兴趣。

植入成本

目前市面上的蓝牙设备还是比较少见。USB接口蓝牙适配器、蓝牙PC卡和蓝牙手机已经有了面向市场的产品,售价都很高。由此可见蓝牙早期发展阶段植入成本还是比较高的。但估计批量化后植入成本可在30美元以下。在蓝牙技术发展成熟的时期,植入成本应该可以控制在10美元以内。

缺点

蓝牙是一种还没有完全成熟的技术,尽管被描述得前景诱人,但还有待于实际使用的严格检验。蓝牙的通讯速率也不是很高,在当今这个数据爆炸的时代,可能也会对它的发展有所影响。

目前主流的软件和硬件平台均不提供对蓝牙的支持,这使得蓝牙的应用成本升高,普及难度增大。

ISM频段是一个开放频段,可能会受到诸如微波炉、无绳电话、科研仪器、工业或医疗设备的干扰。

红外

JAVA介绍

一、前言

『Java』从1995年的暑假开始在计算机业界就受到了高度注意,特别是在Internet和多 媒体(Multimedia)相关产品类方面。Java为何有如此这么大的魅力?人作如此的比喻: Java在全球资讯网(World Wide Web, WWW)地位就如同电子表格(Spreadsheet)与个人计 算机(PC)的关系。那Java究竟有那些特色呢?

Java是一种软件技术

是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言

是一种为 Internet发展的计算机语言

是一种使网页(Web Page)产生生动活泼画面的语言

是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言

是一种语言,用以产生「小应用程序(Applet(s))」

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能

是一种将安全性(Security)列为第一优先考虑的语言

是一种使用者不需花费很多时间学习的语言

是一种突破用户端机器环境和CPU结构的语言

是一种「写一次,即可在任何机器上执行(Write OnceRun Anywhere)」的语言是有史以来,第一套允 使用者将应用程序(Applications)通过Internet从远端的服务器(Remote Server)传输到本地端的机器 上(LocalMachine)并执行

是一种应用程序提供者不需要知道使用者的计算机硬件(如:Sun, Intel, 或MAC等)与软件(如:SW- UNIX, MAC O/S, Windows, 或NT等)环境的语言(Kestenbaum, 1995)。

下面将依序地介绍Java,首先是Java的发展历史与Java语言介绍,其次依序是Java Applet和HotJava的简单介绍。

二、Java FAQ

下面以问答的方式来说明Java的发展历史与其背景(下列内容整理自 Java FAQ list and Tutorial和The Java Language: A White Paper,读者若欲深 入了解,请自行参阅原文):

Java何时开始发展?(When)

最早大概可追溯至1991年四月份,Sun的绿色计划(Green Project)开始着手于发展消费性电子产品(Consumer Electronics),所使用的语言是C、C++、及Oak (为Java语 言的前身),后因语言本身和市场的问题, 使得消费性电子产品的发展无法达到当初 预期的目标,再加上网络的兴起, 绿色计划也因此而改变发展的方向,这已是1994 年了。

为何称之为Java?(Why) "Java"是美国SUN计算机公司Java发展小组历经无数次的激烈讨论之后才被选择出。 生动(Liveliness)、动画(Animation)、速度(Speed)、交互性(Interactivity)为当 初选择名字时所欲表达出的特色。"Java"是在无数的建议中脱颖而出的,而"Java" 不是由几个单字的首字所组成, 而是从许多程序设计师钟爱的热腾腾、香浓咖啡中 产生灵感的。

谁开发了Java?(Who) Java是美国SUN计算机公司Java发展小组开发的,早期的成员(绿色工程)是Patrick Naughton, James Gosling, Mike Sheridan,而现在大家较为熟悉的成员是James Gosling。

在那里开发了Java?(Where)

也就是问Java的出生地?答案是美国。

如何可以找到所需的Java信息?(How to)

在网路上,您可以连到Sun公司的Java WWW网站,URL是,或是 。在那里几乎可以找到您所需要的所有Java信息,但是语 言多少是一个障碍, 至少对某些人而言;没关系,目前国内已有很多个网站提供中文 Java信息。在清华和中科院的FTP站点上有不少有关资料。想象以后应会有更多的站点提供相关信息。

如何才能看到Java的效果?(How Do I)

首先您需要有含有Java解释器的浏览器(Browser),例如:Netscpae公司的Netscape Navigator 2.0以上或是Sun公司的HotJava浏览器,对个人计算机使用者而言,操作 系统需是Windows 95或是Windows NT。

Java是因为撰写C++语言程序时的困难而研制开的,起先,只是一个消费性电子产品 大计划中的一部份,C++语言是当初被考虑采用的,但从一开始的编译问题一直到最 后的一连串问题迫使得放弃C++语言,而有Java语言的产生。Sun是要Java成为一个简 单(Simple)、面向对象的(Object Oriented)、 分布式的(Distributed)、解释的(Interpreted)、健壮的(Robust)、安全的(Secure)、 结构中立的(Architecture Neutral)、可移植的(Portable)、高效能的(High Performance)、多线程的(Multithreaded)、动态的(Dynamic)的程序语言(摘译自 TheJava Language: A White Paper, 1995)。

在Sun的Java语言白皮书中明白地说明上述Java语言的技巧。若以木工为比喻,一个面 向对象的木工,他(她)最主要的重点是即将要做的木椅子,其次才是所需要的工具; 反之;一个以非面向对象的木工,他(她)所关心的只是工具。最近的即插即用(Plug and Play)亦是面向对象设计的重点。 分布式的(Distributed):Java有一个很周全的程薪录JAVA介绍 。

一、

『Java』从1995年的暑假开始在计算机业界就受到了高度注意,特别是在Internet和 多媒体(Multimedia)相关产品类方面。Java为何有如此这么大的魅力?人作如此的比喻: Java在全球资讯网(World Wide Web, WWW)地位就如同电子表格(Spreadsheet)与个人计 算机TTP和FTP等TCP/IP通讯协定相配合。Java应用程序(Applications) 能在网路上开启及连结使用物件,就如同透过URLs连结使用一个本地文件系统(Local File System)。 健壮的(Robust):由Java所编写出的程序能在多种情况下执行而具有其稳定性。Java与 C/C++最大不同点是Java有一个指针模型(Pointer Model)来排除内存被覆盖(Overwriting Memory)和毁损数据(Corrupting Data)的可能性。

安全的(Secure):Java是被设计用于网络及分布式的环境中,安全性自必是一个很 重要的考虑。Java拥有数个阶层的互锁(Interlocking)保护措施,能有效地防止病 毒的侵入和破坏行为的发生。

结构中立的(Architecture Neutral):一般而言,网络是由很多不同机型的机器所 组合而成的,CPU和作业系统体系结构均有所不同;因此,如何使一个应用程序可以 在每一种机器上执行,是一个难题。所幸,Java的编译器产生一种结构中立的目标 文件格式(Object File Format);这使得编译码得以在很多种处理器中执行。

可移植的(Portable):原始资料型式的大小是被指定的,例如"float"一直是表示一 个32位元IEEE 754浮点运算数字,因绝大多数的CPU都具有此共同特征。程序库属于 系统的一部份,它定义了一些可移植的程序接口,Java本身具备有很好的可移植性。

解释的(Interpreted):Java解释器能直接地在任何机器上执行Java位元码(Bytecodes), 因此在进行程序连结时,时间的节省,这对于缩短程序的开发过程,有极大的帮助。

高效能的(High Performance):Java位元码迅速地能被转换成机器码(Machine Code), 从位元码转换到机器码的效能几乎与C与C++没有分别。

多线程的(Multi threaded):Java语言具有多线程的功能,这对于交互回应能力及 即时执行行为是有帮助的。

动态的(Dynamic):Java比C或C++语言更具有动态性,更能适应时刻在变的环境, Java不会因程序库的更新,而必须重新编译程序。

此外,Hank Shiffman (Making Sense of Java)亦针一般对Java的错误看法及观 念提出他的说明,特在此摘译如下:

"Java是一种编写Web Pages的一种语言,就如同HTML和VRML一样" 事实上,Java并不像是HTML此一类的描述语言(Description Language),而是一种 编程语言(Programming Language)。描述语言标明内容和位置,而编程语言描述一 种产生结果的过程。

2. "Java语言容易学习和使用,不像C、C++和其它程序语言"

Java是一种编程语言。Java容易学吗?Java或许是比C或C++容易学,但仍是一种编程语言,而不是一种描述语言。

3. "Java码是可移植的,但C及C++不是"

Java原代码(Source Code)是比C语言来得可移植一点,差别在于Java的目标码。 Java码在一种机器上进行编译,而能在所有的机器上执行, 只要那部机器上有 Java解释器。

4. "Java能被拓展而在机器上执行任何事情"

理论上,Java Applet (Java小应用程序)能做任何事情,如模拟3D VRML模型、播放电影、产生音频....等。但事实上,一个小应用程序(Applet)仅能在那一页上被执行,而无法在那一页之外执行。同时,Java亦受限于程序库的功能。

5. "Java是适合于建立大型的应用程序"

如果Java适合于大型程序,则Java就不适合应用于Web浏览器了。第一个商业 性的Java Applets (Applix's Java-Based Spreadsheet) 并不是全然使用Java, 它只使用Java作为用户接口,而所有的处理工作, 是用CGI码。

6. "Java是解释执行的,Basic是解释执行的,因此Java=Basic"

虽然Java的确是使用解释器,但事实上,Java则与C或C++等完全编译语言较为相近,但与Basic或APL等完全解译语言较不相近。

7. "Java删除了CGI命令稿(Scripts)和程序的需求"

Java Applets将会取代部份CGI的用途。在有些情况,Java Applets能够取代一些服务器端代码(Server-Side Code),但大多数的情况,基于安全性理由或是效 能的考虑,Java仍无法全然取代CGI Scripts。

8. "Netscape's JavaScript是与Java有相关"

除了名称之外,Java和JavaScript是有一点点相关。JavaScript是一种命令稿语 言,是可以在HTML页中使用。Java码并未出现在HTML中,而在HTML中通过一个链 结来链结编译码组。Java和JavaScript之间的关系就如同C语言和C Shell一般。

怎么在电脑上安装蓝牙?

蓝牙接收器是指能接受传输方式为蓝牙的接收器,一般支撑PC与Mac,现今已经广泛运用于生活中,如我们常用的蓝牙耳机、蓝牙音箱、蓝牙鼠标、蓝牙键盘等都属于蓝牙接收器。

具有蓝牙信号的接收和发送功能,可以算是蓝牙接收器的一种,就像网络适配器用来连接网络设备一样。蓝牙4.0设备通信方案是统一的通信程序平台,主要组成部分包括通信方案所提供的通信类库,在构建时,采用的是面向对象的思想,运用模块化与组件化技术。

蓝牙4.0设备通信方案的基本结构体系包括页面、状态管理器、缓存、类库等,每个组成部分在系统运行中具有重要作用,能确保应用程序得到有效执行。

java 写pc和手机用蓝牙实现通信是不是要先导入一个包

不只要导入一个包,需要导入蓝牙相关的,适配器(Bluetooth.Adapter),设备(Bluetooth.Device),接口(Bluetooth.Socket)等,这是最基本的,这个得看你的需求了。

关于电脑java蓝牙和java调用蓝牙程序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-01,除非注明,否则均为首码项目网原创文章,转载请注明出处。