诸位高手,求点拨:
我想用Java实现一个“上传本地文件至服务器”的功能:
上面是代码中的一部分。 上图中的第37行代码,如果将之运行的话,能够得到: 下图的结果:
诸位哥,从这里的输出结果和下文中的api中给出的结果来看:
,应该输出的是一个“字符串类型的数据”在每一行吧...? 所以在图一中,我采取了:“String类型的变量数组”“进行数据的接收”,应该是可以的吧...? 诸位哥,在图1中的错误,是什么“科学原理”...?
为什么下图中的图1中的错误提示:
却又用白纸黑字说明了“类型不匹配”的错误解释....?
我想把找到的结果,用一个数组接下来,然后借助File类的构造方法,将找到的目标,我所采用的“String[] commonFile”字他符串数组进行搜索出的结果的“承接”,再将这里的结果进行“File类型的构造方法的参数填写”,让Socket对象能够借助这里的File类的“准星定位”的功能,通过一个FileOutputStream类的实体的数据传递,将查到的结果,进行“Socket信道的上传”功能的实现。
但是,这里初步的代码书写结果,让我的计划,出现了“搁浅”:
求诸位哥点拨:
弟我的方案,如果不能够通过“上面的一个String数组”进行相应的搜索结果的承接,再将结果借助File类进行Socket对象面向服务器的传递的话,我应该怎么做,能够将我的计划:
将目标用户PC中的数据,传递到我的服务器中,实现? 求诸位高手指点迷津....
看你的代码 ,你的原意是想扫描硬盘中的文件,把所有视频文件的路径保存在一个数组里吧?你这段代码中有几个错误:
static关键字只能用于定义成员变量或方法中,不能写在方法中。
2. 之所以提示类型不匹配,是因为你的files1是个File类型的数组,而你在37行声明的commonFile是个字符串数组,而且你在每次遍历的时候都重新声明一个字符串数组了,这样没有意义,应该把声明字符串数组的操作放在前面。
总结一下,我改了一下你的代码,不知是否是你想要的:
final int length = files1 != null ? files1.length : 0;没有看到files1的定义,你的files1是File类型的数组吧,直接转换成String是不行的,至于输出的结果,那是应为,在println(),这个会自动的调用本类的toString()方法。
至少应该是
String str[i]=files1[i].getPath();