尝试通过读取输入等基本功能来练习Java。
我正在尝试解析 <android.support.v4.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView01"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:fitsSystemWindows="true"
android:scrollbars="vertical">
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/sw_ManualRefresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/view"
android:layout_alignStart="@+id/view"
android:layout_marginTop="20dp"
android:text="Today"
android:textAllCaps="true"
android:textSize="20sp" />
<View
android:id="@+id/view"
android:layout_width="match_parent"
android:layout_height="1.7dp"
android:layout_below="@id/textView5"
android:layout_marginEnd="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="0dp"
android:background="@color/colorAccent" />
<android.support.v7.widget.RecyclerView
android:id="@+id/list_Today_plan"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginTop="12dp"
android:nestedScrollingEnabled="false" />
<TextView
android:id="@+id/textView6"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Upcoming"
android:textAllCaps="true"
android:textColor="@color/colorPrimaryDark"
android:textSize="20sp" />
<View
android:id="@+id/view2"
android:layout_width="match_parent"
android:layout_height="1.7dp"
android:layout_marginEnd="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="13dp"
android:layout_marginStart="8dp"
android:background="@color/colorAccent"
/>
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginTop="8dp"
android:nestedScrollingEnabled="false"
android:visibility="visible" />
</LinearLayout>
</android.support.v4.widget.SwipeRefreshLayout>
</android.support.v4.widget.NestedScrollView>
中找到的内容:
movies-sample.txt
尝试从
到达C:\University\BigDataManagement\Data-Mining\hw1\src\main\resources\movies-sample.txt
movies-sample.txt
使用找到here的答案来了解如何逐行解析大文件。
C:\University\BigDataManagement\Data-Mining\hw1\src\main\java
\univ\bigdata\course\MoviesReviewsQueryRunner.java
我收到以下错误:
系统无法找到指定的路径
鉴于以上两条路径,我做错了什么?
答案 0 :(得分:2)
如果它是一个Web应用程序,则resources
文件夹是您的根元素,否则它将是评论中提到的src
文件夹。
在这种情况下,当您编写独立的Java程序并且文件在resources
文件夹中时,您可以使用 CLassLoader
将文件读取为一条小溪。
这应该是你的代码:
ClassLoader classloader = Thread.currentThread().getContextClassLoader();
InputStream is = classloader.getResourceAsStream("movies-sample.txt");
然后,您将能够逐行阅读is
流。
答案 1 :(得分:0)
如果直接从命令行运行程序,则路径必须与当前目录相关。
如果从IDE运行程序,则runnin程序的当前目录取决于IDE及其配置方式。
您可以使用System.getProperty("user.dir")
无论如何,在应用程序中对路径进行硬编码总是一件坏事,因为您无法确保从何处启动运行。之一: