Julia中的相对文件路径

时间:2020-07-09 14:33:35

标签: julia

如何从子文件夹读取文件。

import React, {useState, useEffect} from "react";

import Modal from "../components/UI/Modal/Modal";

const withErrorHandler = (WrappedComponent, axios) => {
  return (props) => {
    const [error, setError] = useState(null);

    const requestInterceptor = axios.interceptors.request.use((req) => {
      setError(null);
      return req;
    });

    const responseInterceptor = axios.interceptors.response.use(
      (res) => res,
      (err) => {
        setError(err);
      }
    );

    useEffect(() => {
      return () => {
        axios.interceptors.request.eject(requestInterceptor);
        axios.interceptors.response.eject(responseInterceptor);
      };
    }, [requestInterceptor, responseInterceptor]);

    const errorConfirmedHandler = () => {
      setError(null);
    };

    return (
      <React.Fragment>
        <Modal showModal={error ? true : false} closeModal={errorConfirmedHandler}>
          {error ? error.message : null}
        </Modal>
        <WrappedComponent {...props} />
      </React.Fragment>
    );
  };
};

export default withErrorHandler;
  1. 我如何从 ... folder ------ subfolder_1 | |--- subfolder_2 subfolder_1 中访问文件?
  2. 我如何从 folder subfolder_1 中访问文件?

我要问的原因是我想读取一个Excel文件(使用subfolder2包),但是它不起作用。 (“ MethodError:没有与readtable(:: String ... ”匹配的方法)我想我在这里做错了其他事情。

此外,我觉得其他人也可能对此问题感兴趣。

1 个答案:

答案 0 :(得分:1)

MethodError表示您要使用的函数并非针对您输入的输入而设计。要获取有关该函数及其所需参数的更多信息,请在输入以下内容后在REPL中键入? <functionname>输入using <packagename>

在这种情况下,? readtable显示以下内容:

readtable(filepath, sheet, [columns]; [first_row], [column_labels], [header], [infer_eltypes], [stop_in_empty_row], [stop_in_row_function]) -> data, column_labels

前两个参数filepathsheet是必需的。方括号中的参数是可选的。对于您的情况,您需要添加第二个字符串参数,其中包含要从XLSX文件读取的工作表名称。帮助还显示输出将是包含(data, column_labels)的元组,因此请准备好处理它。通常,该元组将使用DataFrames.jl和函数DataFrame()(例如DataFrame(readtable(filepath,sheet)))转换为DataFrame。

对于访问文件夹和子文件夹,您输入的路径可以相对于Julia的当前工作目录,也可以是绝对路径,这取决于您的操作系统。子文件夹用/之类的"folder/subfolder"表示。您可以使用双点..(例如"subfolder2/../subfolder1")上一个文件夹。