注意这不是以下任何一个重复
我有两个约会:
"2016-08-31" "2016-11-30"它在上述两个日期之间的91天持续时间,我预计我的代码将返回3个月的持续时间,但以下方法仅返回2个月.有人有更好的建议吗?或者你们认为这是Java 8中的一个错误吗?91天的持续时间仅返回2个月.
非常感谢你的帮助.
方法1:
Period diff = Period.between(LocalDate.parse("2016-08-31"),
LocalDate.parse("2016-11-30"));
Run Code Online (Sandbox Code Playgroud)
方法2:
long daysBetween = ChronoUnit.MONTHS.between(LocalDate.parse("2016-08-31"),
LocalDate.parse("2016-11-30"));
Run Code Online (Sandbox Code Playgroud)
方法3:
我尝试使用Joda库而不是Java 8 API,它的工作原理.它将loos返回3,看起来像Java持续时间的月计算也使用了天数值.但就我而言,我不能在我的项目中使用Joda.所以还在寻找其他解决方案.
LocalDate dateBefore= LocalDate.parse("2016-08-31");
LocalDate dateAfter = LocalDate.parse("2016-11-30");
int months = Months.monthsBetween(dateBefore, dateAfter).getMonths();
System.out.println(months);
Run Code Online (Sandbox Code Playgroud) 我有一个关于Python 2.7用' utf-8-sig'代码csv读写csv文件的问题。标头为
['\xef\xbb\xbfID;timestamp;CustomerID;Email']
Run Code Online (Sandbox Code Playgroud)
"\xef\xbb\xbfID"我从文件中读取了一些代码()A.csv,我想将相同的代码和标头写入文件B.csv
我的打印日志显示:
['\xef\xbb\xbfID;timestamp;CustomerID;Email']
Run Code Online (Sandbox Code Playgroud)
但是实际的输出文件头看起来像
ÔªøID;timestamp
Run Code Online (Sandbox Code Playgroud)
这是代码:
def remove_gdpr_info_from_csv(file_path, file_name, temp_folder, original_header):
new_temp_folder = tempfile.mkdtemp()
new_temp_file = new_temp_folder + "/" + file_name
# Blanked new file
with open(new_temp_file, 'wb') as outfile:
writer = csv.writer(outfile, delimiter=";")
print original_header
writer.writerow(original_header)
# File from SFTP
with open(file_path, 'r') as infile:
reader = csv.reader(infile, delimiter=";")
first_row = next(reader)
email = first_row.index('Email')
contract_detractor1 = first_row.index('Contact Detractor (Q21)')
contract_detractor2 = first_row.index('Contact Detractor (Q20)')
contract_detractor3 = first_row.index('Contact Detractor (Q43)') …Run Code Online (Sandbox Code Playgroud)