它或许是目前最好用的跨平台文件传输工具...

它或许是目前最好用的跨平台文件传输工具...,第1张

说到跨平台文件传输,大家最先想到的是哪些文件传输方法呢?用QQ、微信或者用隔空投送、MIUI+、“一碰传”?或者...用数据线、U盘?

用QQ或微信传输文件时,不需要考虑平台的限制,我们只需要在两台设备上安装QQ或微信就可以了。但是用QQ或微信传输文件也有很多缺点,比如传输速度慢,文件大小受限制等等...

而iPhone的隔空投送、小米的MIUI+、华为的“一碰传”嘛...我们也不能为了跨平台传输文件而放弃自己的手机或电脑,去购买苹果、小米、华为的手机或电脑吧...

如果你有这一方面的需求,那么今天要介绍的这款软件或许会成为你最喜欢的跨平台文件传输工具。

LANDrop是一款免费无广告的、跨平台的局域网文件传输工具。安装它的设备只要在同一个局域网下,就能互相发现并快速传输文件。

它进行传输文件时对文件的大小和数量没有限制,传输速度上也是没有限制的。它目前支持iOS、Android、Windows、Mac OS、Linux等平台。

它的使用方法比较简单。以手机和Windows电脑传输文件为例,首先我们需要给手机安装LANDrop。而它的Windows版是免安装的,打开就能使用。

接下来,我们需要将手机和电脑接入同一个局域网,并在手机和电脑上打开LANDrop。两台设备接入同一局域网并启动LANDrop后可以快速扫描到对方。

点击手机客户端右上角的文件或图片图标选择需要传输的文件或图片,再点击【Devices】下方的已被扫描到的电脑(设备名)就可以给电脑发送文件或图片历滑散:

用手机给电脑发送文件时,电脑上会出现【验证码】提示,确认后就可以接受手机发送的文件或图片了:

电脑端的 *** 作也很简单:双击任务栏上的LANDrop图标,将想要传输的文件拖入到出现的肢氏小窗口内,并选择发送对象( 比如手机)就可以将电脑中的文件发送到另一台设备了

此时,手机上也需要确认一下是否接受文件:

鼠标右键点击软件图标(任务栏让清上的),点击【设置】可以设置设备名、文件存储位置

那么问题来了,它的文件传输速度最快有多快呢?

俺也布吉岛,因为它是一个局域网文件传输工具,它的传输速度取决于组成局域网的设备,也就是说它的传输速度取决于路由器以及电脑(热点)、手机(热点)等设备。

当然,绝大多数情况下局域网的核心是路由器。所以,我们也可以说“路由器有多快,它就有多快”,在传输文件时它可以轻松跑满你的路由器。

值得一提的是,它甚至可以在可以连接但无法联网的手机热点上(比如,手机没有插卡)也可以正常工作。用手机开热点,再把电脑连接到此热点后也可以用它在手机和电脑间传输文件,而且传输速度非常快。就像这样:

注意:有些安卓手机上可能会出现已经接收到的文件没有出现在文件管理器内的情况(一般是在安卓10及以上的设备上出现)。此时打开手机的文件管理器,打开内部存储/Android/data目录,打开其中的Landrop文件夹就可以找到接收到的文件了。

使用Java语言编写应用程序的优点在于“一次编译,处处运行”,然而这并不是说所有的Java程序都具有跨平台的特性,事实上,相当一部分的Java程序是不能在别的 *** 作系统上正确运行的,那么如何才能编写一个真正的跨平台的Java程序呢?下面是在编写跨平台的Java程序是需要注意的一些事情:

1.编写Java跨平台应用程序时,你可以选择JDK1.0,1.1,1.2或支持它们的GUI开发工具如:Jbuilder,VisualAgeforJava等等,但是必须注意你的Java程序只能使用Java核心API包,如果要使用第三方的类库包,则该类库包也要由Java核心包开发完成,否则在发布你的程序的时候还得将支持该Java类库包的JVM发布出去。也就是说,你的程序需要是100%纯Java的。举一个例子,VisualJ++就不是纯Java的,由VisualJ++编写的程序也就不具有平台无关性。

2.无论你使用的是JDK或其他开发工具,在编译时都要打开所有的警告选项,这样编译器可以尽可能多的发现平台相关的语句,并给出警告。虽然不能保证没有编译时警告错误的程序一定是跨平台的,但含有警告错误的程序却很有可能是非平台无关的。

3.在程序中使用任何一个方法的时候,要详细察看文档,确保你使用的方法不是在文档中已经申明为过时的方法(Deprecatedmethod),也不是文档中未标明的隐含方法(Undocumentedmethod)。

4.退出Java程序时尽量不要使用java.lang.System的exit方法。Exit方法可以终止JVM,从而终止程序,但如果同时运行了另一个喊宽Java程序,使用exit方法就会让该程序也关闭,这显然不是我们希望看到的情况。事实上要退出Java程序,可以使用destory()退出一个独立运行的过程。对于多线程程序,必须要关闭各个非守护线程。只有在程序非正常退出时,才使用exit方法退出程序。

5.避免使用本地方法和本地代码,尽可能自己编写具有相应功能的Java类,改写该方法。如果一定要使用该本地方法,可以编写一个服务器程序调用该方法,然后将现在要编写的程序作为该服务器程序的客户程序,或者考虑CORBA(公共对象请求代理)程序结构。

6.Java中有一个类似于Delphi中的winexec的方法,java.lang.runtime类的exec方法,作为该方法本身是具有平台无关性的,但是给方法所调用的命令及命令参数却是与平台相关的,因此,在编写程序时要避免使用,如果一定要调用其他的程序的话,必须要让用户自己来设置该命令及其参数。比如说,在windows中可以调用notepad.exe程序,在linux中就要调用vi程序了。

7.程序设计中的所有的信息都要使用ASCII码字符集,因为并不是所有的 *** 作系统都支持Unicode字符集,这对于跨平台的Java中文软件程序不能不说是一大噩耗。

8.在程序中不要硬性编码与平台相关的任何常量,比如行分隔符,文件分隔符,路径分隔符等等,这些常量在不同的平台上是不同的,比如文件分隔符,在UNIX和MAC中是“/”,在windows中是“\”,考试,大提示如果要使用这些常量,需要使用jdava.util.Properties类的getProperty方法,如java.util.Properties.getProperty(“file.separator”)可以获得文件分隔符,getProperty(“line.separator”)返回行分隔符,getProperty(“path.separator”)返回路径分隔符。

9.在圆橘编写跨平台的网络程序时,不要使用java.net.InetAddress类的getHostName方法得到主机名,因为不同的平台的主机名格式是不同的,使用getAddress得到郑腔亮格式相同的IP地址,另外,程序中所有的主机名都要换成IP地址,比如www.263.net就要换成相应的IP地址。

10.涉及文件 *** 作的程序需要注意:不要在程序中硬性编码文件路径,理由和8中一样,只是这一点特别重要,因此单独提出。而且,不同平台对于文件名使用的字符及文件名长度的要求不同,编写你的程序的时候要使用一般的ASCII码字符作为文件的名字,而且不能与平台中已存在的程序同名,否则会造成冲突。

11.如果您写的程序是GUI程序,在使用AWT组件时不能硬性设置组件的大小和位置而应该使用Java的布局管理器(layoutmanager)来设置和管理可视组件的大小和位置,否则有可能造成布局混乱。

12.由于不同的 *** 作系统,不同的机器,系统支持的颜色和屏幕的大小和分辨率都不同,如何获得这些属性呢?使用java.awt.Systemcolor类可以获得需要的颜色,如该类的inactiveCaption就是窗口边框中活动标题的背景颜色,menu则是菜单的背景颜色。使用java.awt.Toolkit的getScreenResolution可以以“象素每英寸”为单位显示屏幕的分辨率。该类的getScreenSize可以得到屏幕大小(英寸),loadSystemColors可以列出所有的系统颜色。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8197935.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存