DateTimeFormatter
是在Java 8
中引入的一个格式化器,用于打印和解析日期时间对象。
DateTimeFormatter
是不可变的,并且是线程安全的。
DateTimeFormatter使用用户定义的格式(如 "yyyy-MMM-dd hh:mm:ss"
)或使用预定义的常数(如ISO_LOCAL_DATE_TIME
)来格式化日期时间。
一个DateTimeFormatter
可以用所需的Locale
、Chronology
、ZoneId
和DecimalStyle
创建。
DateTimeFormatter
通过使用其ofPattern
方法被实例化为一个日期时间格式字符串。
实例化DateTimeFormatter
。
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MMM-dd HH:mm:ss");
查找代码,用给定的格式打印日期时间(date-time
)对象的代码。
String dateTime = formatter.format(LocalDateTime.now());
System.out.println(dateTime); //2018-Dec-21 11:14:12
查找代码,用给定的格式解析一个日期时间(date-time
)对象。
LocalDateTime ldt = LocalDateTime.parse("2018-Dec-20 08:25:30", formatter);
System.out.println(ldt); //2018-12-20T08:25:30
下面,我们将讨论DateTimeFormatter
的方法,并举例说明LocalDate
、LocalDateTime
和LocalTime
实例的格式。
DateTimeFormatter
有以下静态方法来实例化DateTimeFormatter
。
FormatStyle
是一个枚举,其值可以是FULL
, LONG
, MEDIUM
, SHORT
。date-time
)格式的格式化器。date-time
)格式的格式化器。我们需要为日期和时间分别传递FormatStyle
。例如,日期可以是LONG
,时间可以是SHORT
。import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.time.format.FormatStyle;
import java.util.Locale;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
LocalDate localDate = LocalDate.now();
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("MMM dd, yyyy");
String formattedDate1 = formatter1.format(localDate);
System.out.println(formattedDate1); //Dec 17, 2018
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("MMM dd, yyyy", Locale.CANADA);
String formattedDate2 = formatter2.format(localDate);
System.out.println(formattedDate2); //Dec. 17, 2018
DateTimeFormatter formatter3 = DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL);
String formattedDate3 = formatter3.format(localDate);
System.out.println(formattedDate3); //Monday, December 17, 2018
LocalDateTime localDateTime = LocalDateTime.now();
DateTimeFormatter formatter4 = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.MEDIUM);
String formattedDate4 = formatter4.format(localDateTime);
System.out.println(formattedDate4); //Dec 17, 2018, 9:14:39 PM
DateTimeFormatter formatter5 = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.LONG, FormatStyle.SHORT);
String formattedDate5 = formatter5.format(localDateTime);
System.out.println(formattedDate5); //December 17, 2018, 9:14 PM
LocalTime localTime = LocalTime.now();
DateTimeFormatter formatter6 = DateTimeFormatter.ofLocalizedTime(FormatStyle.MEDIUM);
String formattedDate6 = formatter6.format(localTime);
System.out.println(formattedDate6); //9:14:39 PM
}
}
输出
Dec 17, 2018
Dec. 17, 2018
Monday, December 17, 2018
Dec 17, 2018, 9:14:39 PM
December 17, 2018, 9:14 PM
9:14:39 PM
它是一个关于本地化日期、时间或日期时间(date-time
)格式化风格的枚举。
它有以下常数。
1.FULL:例如 'Tuesday, April 11, 2015 AD' or '5:30:45pm PST'
.
2. LONG:例如 'January 10, 2018'
.
3. MEDIUM:例如 'Jan 10, 2018'
4. SHORT:例如 '11.15.50' or '6:30pm'
.
为了格式化一个日期、时间或日期时间(date-time
),DateTimeFormatter
提供了以下方法。
date-time
)对象进行格式化,并以字符串形式返回。date-time
)对象进行格式化,并将结果附加到给定的Appendable
对象中。Appendable
对象可以是StringBuffer
、StringBuilder
等的实例。import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd hh:mm:ss");
LocalDateTime ldt = LocalDateTime.now();
System.out.println(dtf.format(ldt)); //2018-Dec-20 03:50:45
StringBuffer sb = new StringBuffer("Date ");
dtf.formatTo(ldt, sb);
System.out.println(sb); //Date 2018-Dec-20 03:50:45
}
}
输出
2018-Dec-20 03:50:45
Date 2018-Dec-20 03:50:45
LocalDate
是一个在ISO-8601
日历系统中没有时区的日期。
找到使用DateTimeFormatter
格式化LocalDate
的例子。
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd");
LocalDate ld = LocalDate.now();
System.out.println(dtf.format(ld)); //2018-Dec-20
dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd(E)");
ld = LocalDate.now();
System.out.println(dtf.format(ld)); //2018-Dec-20(Thu)
dtf = DateTimeFormatter.ofPattern("MMM dd, YYYY");
ld = LocalDate.now();
System.out.println(dtf.format(ld)); //Dec 20, 2018
}
}
输出
2018-Dec-20
2018-Dec-20(Thu)
Dec 20, 2018
DateTimeFormatter
也被用来解析一个本地日期。
查找示例代码。
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MMM dd, yyyy");
LocalDate ld = LocalDate.parse("Dec 20, 2018", dtf);
System.out.println(ld);
输出
2018-12-20
LocalDateTime
是ISO-8601
日历系统中没有时区的日期时间。
查找使用DateTimeFormatter
格式化LocalDateTime
的示例。
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd hh:mm:ss");
LocalDateTime ldt = LocalDateTime.now();
System.out.println(dtf.format(ldt)); //2018-Dec-20 07:40:03
dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd(E) hh:mm:ss a");
ldt = LocalDateTime.now();
System.out.println(dtf.format(ldt)); //2018-Dec-20(Thu) 07:40:03 PM
dtf = DateTimeFormatter.ofPattern("yy-MM-dd HH:mm:ss");
ldt = LocalDateTime.now();
System.out.println(dtf.format(ldt)); //18-12-20 19:40:03
}
}
输出
2018-Dec-20 07:40:03
2018-Dec-20(Thu) 07:40:03 PM
18-12-20 19:40:03
DateTimeFormatter
也被用来解析本地日期时间。
查找示例代码。
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd HH:mm:ss");
LocalDateTime ldt = LocalDateTime.parse("2018-Dec-20 08:25:30", dtf);
System.out.println(ldt);
输出
2018-12-20T08:25:30
LocalTime
是ISO-8601
日历系统中没有时区的时间。
查找使用DateTimeFormatter
格式化LocalTime
的例子。
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("hh:mm:ss");
LocalTime lt = LocalTime.now();
System.out.println(dtf.format(lt)); //08:03:32
dtf = DateTimeFormatter.ofPattern("hh:mm:ss a");
lt = LocalTime.now();
System.out.println(dtf.format(lt)); //08:03:32 PM
dtf = DateTimeFormatter.ofPattern("HH:mm");
lt = LocalTime.now();
System.out.println(dtf.format(lt)); //20:03
}
}
输出
08:03:32
08:03:32 PM
20:03
DateTimeFormatter
也被用来解析本地时间。
查找示例代码。
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("HH:mm:ss");
LocalTime lt = LocalTime.parse("08:25:30", dtf);
System.out.println(lt);
输出
08:25:30
DateTimeFormatter
提供以下方法来解析文本。
1.
TemporalAccessor parse(CharSequence text)
解析一个日期、时间或日期时间(date-time
)的文本,并返回时间性(temporal
)对象。
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MMM-yyyy hh:mm:ss");
TemporalAccessor ta = formatter.parse("18-Dec-2017 02:46:41");
System.out.println(ta.get(ChronoField.YEAR));
System.out.println(ta.get(ChronoField.HOUR_OF_AMPM));
输出
2017
2
2.
TemporalAccessor parse(CharSequence text, ParsePosition position)
我们可以通过ParsePosition
来转义给定文本中的一些字符。
我们用给定的初始索引启动一个ParsePosition
,parse
方法将从那里开始解析给定的文本。
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MMM-yyyy hh:mm:ss");
TemporalAccessor ta = formatter.parse("Date 18-Dec-2017 02:46:41", new ParsePosition(5));
System.out.println(ta.get(ChronoField.YEAR));
System.out.println(ta.get(ChronoField.HOUR_OF_AMPM));
输出
2017
2
3.
<T> T parse(CharSequence text, TemporalQuery<T> query)
解析给定的文本并返回TemporalQuery
指定的对象。
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MMM-yyyy hh:mm:ss");
LocalDate localDate = formatter.parse("18-Dec-2017 02:46:41", TemporalQueries.localDate());
System.out.println(localDate);
输出
2017-12-18
4.
TemporalAccessor parseBest(CharSequence text, TemporalQuery<?>... queries)
解析给定文本并返回其中一个指定类型。
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MMM-yyyy hh:mm:ss");
TemporalAccessor ta = formatter.parseBest("18-Dec-2017 02:46:41",
TemporalQueries.localDate(), TemporalQueries.localTime());
System.out.println(ta);
输出
2017-12-18
5.
TemporalAccessor parseUnresolved(CharSequence text, ParsePosition position)
用给定的ParsePosition
解析给定的文本,但不解决它。
这意味着即使月日是38
,它也不会产生错误。
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MMM-yyyy hh:mm:ss");
TemporalAccessor ta = formatter.parseUnresolved("Date 38-Dec-2017 02:46:41", new ParsePosition(5));
System.out.println(ta);
输出
{
DayOfMonth=38, ClockHourOfAmPm=2, MinuteOfHour=46, YearOfEra=2017, SecondOfMinute=41, MonthOfYear=12},null
6.
static TemporalQuery<Period> parsedExcessDays()
提供一个查询,以访问作为已解析的Period
的多余天数。
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAccessor;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("HH:mm");
TemporalAccessor parsed1 = formatter1.parse("24:00");
LocalTime lt1 = parsed1.query(LocalTime::from);
Period excessDays1 = parsed1.query(DateTimeFormatter.parsedExcessDays());
System.out.println(lt1 + " , " + excessDays1); //00:00 , P1D
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
TemporalAccessor parsed2 = formatter2.parse("2018-12-03 24:00");
LocalDateTime lt2 = parsed2.query(LocalDateTime::from);
Period excessDays2 = parsed2.query(DateTimeFormatter.parsedExcessDays());
System.out.println(lt2 + " , " + excessDays2); //2018-12-04T00:00 , P0D
}
}
输出
00:00 , P1D
2018-12-04T00:00 , P0D
我们可以看到,当我们只有时间时,24:00
(一天的结束),我们得到的时间是00
和超过1
天(P1D
意味着有1
天的时间)。
但是当我们同时提供日期和时间时,在这种情况下,多余的天数就会加到日期部分。在我们的例子中,我们可以看到第3
天已经变成了第4
天,多余的天数为0
。
7.
static TemporalQuery<Boolean> parsedLeapSecond()
提供一个查询,用于访问是否解析了闰秒。
如果解析到闰秒,该查询返回真,否则返回假。
在UTC
时区,闰秒发生在'23:59:60'
。
在其他时区,时间可能不同。
查找示例。
import java.time.Instant;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAccessor;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter formatter = DateTimeFormatter.ISO_INSTANT;
TemporalAccessor parsed = formatter.parse("2017-12-31T23:59:60Z");
Instant instant = parsed.query(Instant::from);
System.out.println(instant);
System.out.println("leap second parsed="
+ parsed.query(DateTimeFormatter.parsedLeapSecond()));
}
}
输出
2017-12-31T23:59:59Z
leap second parsed=true
DateTimeFormatter.ISO_INSTANT
用UTC
格式化一个瞬间(instant
)。
下列方法返回DateTimeFormatter
实例。
我们可以在使用DateTimeFormatterBuilder
实例化DateTimeFormatter
时使用上述方法。
查找示例代码。
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.chrono.IsoChronology;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeFormatterBuilder;
import java.time.format.DecimalStyle;
import java.time.format.ResolverStyle;
import java.time.format.TextStyle;
import java.time.temporal.ChronoField;
import java.util.Locale;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
DateTimeFormatter formatter = builder.appendLiteral("Day is:")
.appendValue(ChronoField.DAY_OF_MONTH)
.appendLiteral(", month is:")
.appendValue(ChronoField.MONTH_OF_YEAR)
.appendLiteral(", and year:")
.appendPattern("u")
.appendLiteral(" with the time:")
.appendValue(ChronoField.HOUR_OF_DAY)
.appendLiteral(":")
.appendText(ChronoField.MINUTE_OF_HOUR, TextStyle.NARROW_STANDALONE)
.toFormatter()
.withDecimalStyle(DecimalStyle.STANDARD)
.withChronology(IsoChronology.INSTANCE)
.withLocale(Locale.CANADA)
.withResolverStyle(ResolverStyle.LENIENT)
.withZone(ZoneId.systemDefault());
LocalDateTime dateTime = LocalDateTime.now();
String str = dateTime.format(formatter);
System.out.println(str);
}
}
输出
Day is:20, month is:12, and year:2018 with the time:11:36
我们可以使用以下方法获取DateTimeFormatter
对象信息。
getChronology():获取年表。
getDecimalStyle():获取十进制风格。
getLocale():获取区域设置。
getResolverFields():获取解析器字段。
getResolverStyle():获取解析器样式。
getZone():获取区域。
示例
import java.time.format.DateTimeFormatter;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter dtf = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
System.out.println("Chronology: " + dtf.getChronology());
System.out.println("DecimalStyle: " + dtf.getDecimalStyle());
System.out.println("Locale: "+ dtf.getLocale());
System.out.println("ResolverFields: "+ dtf.getResolverFields());
System.out.println("ResolverStyle: "+ dtf.getResolverStyle());
System.out.println("Zone: "+ dtf.getZone());
}
}
输出
Chronology: ISO
DecimalStyle: DecimalStyle[0+-.]
Locale: en_US
ResolverFields: null
ResolverStyle: STRICT
Zone: null
DateTimeFormatter
提供以下方法将DateTimeFormatter
转换为java.text.Format
。
示例
import java.text.Format;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter dtf1 = DateTimeFormatter.ofPattern("MMM dd, yyyy");
Format format1 = dtf1.toFormat();
String ld = format1.format(LocalDate.parse("2017-12-20"));
System.out.println(ld); //Dec 20, 2017
DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("HH:mm:ss");
Format format2 = dtf2.toFormat();
String time = format2.format(LocalDateTime.now());
System.out.println(time); //12:34:23
}
}
输出
Dec 20, 2017
12:34:23
DateTimeFormatter
有以下预定义的格式。
Formatter | Example |
---|---|
BASIC_ISO_DATE | ‘20181203’ |
ISO_LOCAL_DATE | ‘2018-12-03’ |
ISO_OFFSET_DATE | ‘2018-12-03+01:00’ |
ISO_DATE | ‘2018-12-03+01:00’; ‘2018-12-03’ |
ISO_LOCAL_TIME | ‘11:15:30’ |
ISO_OFFSET_TIME | ‘11:15:30+01:00’ |
ISO_TIME | ‘11:15:30+01:00’; ‘11:15:30’ |
ISO_LOCAL_DATE_TIME | ‘2018-12-03T11:15:30’ |
ISO_OFFSET_DATE_TIME | ‘2018-12-03T11:15:30+01:00’ |
ISO_ZONED_DATE_TIME | ‘2018-12-03T11:15:30+01:00[Europe/Paris]’ |
ISO_DATE_TIME | ‘2018-12-03T11:15:30+01:00[Europe/Paris]’ |
ISO_ORDINAL_DATE | ‘2018-337’ |
ISO_WEEK_DATE | ‘2018-W48-6’ |
ISO_INSTANT | ‘2018-12-03T11:15:30Z’ |
RFC_1123_DATE_TIME | ‘Tue, 3 Jun 2018 11:05:30 GMT’ |
例如,我们正在提供一个示例,以便使用预定义格式化器ISO_WEEK_DATE
来打印和解析本地日期。
找到代码。
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class DateTimeFormatterDemo {
public static void main(String[] args) {
DateTimeFormatter formatter = DateTimeFormatter.ISO_WEEK_DATE;
String dateTime = formatter.format(LocalDate.now());
System.out.println(dateTime); //2018-W51-5
LocalDate ld = LocalDate.parse("2018-W40-4", formatter);
System.out.println(ld); //2018-10-04
}
}
输出
2018-W51-5
2018-10-04
找到格式化日期时间的模式字母(letters
)和符号(symbols
)。
Symbol | Description | Example |
---|---|---|
G | era | AD; Anno Domini; A |
u | year | 2018; 18 |
y | year-of-era | 2018; 18 |
D | day-of-year | 180 |
M/L | month-of-year | 7; 07; Jul; July; J |
d | day-of-month | 11 |
g | modified-julian-day | 2451334 |
Q/q | quarter-of-year | 3; 03; Q3; 3rd quarter |
Y | week-based-year | 1999; 99 |
w | week-of-week-based-year | 25 |
W | week-of-month | 3 |
E | day-of-week | Tue; Tuesday; T |
e/c | localized day-of-week | 2; 02; Tue; Tuesday; T |
F | day-of-week-in-month | 2 |
a | am-pm-of-day | AM |
h | clock-hour-of-am-pm (1-12) | 12 |
K | hour-of-am-pm (0-11) | 0 |
k | clock-hour-of-day (1-24) | 24 |
H | hour-of-day (0-23) | 0 |
m | minute-of-hour | 35 |
s | second-of-minute | 50 |
S | fraction-of-second | 970 |
A | milli-of-day | 1234 |
n | nano-of-second | 987654321 |
N | nano-of-day | 1234000000 |
V | time-zone ID | America/Los_Angeles; Z; -08:30 |
v | generic time-zone name | Pacific Time; PT |
z | time-zone name | Pacific Standard Time; PST |
O | localized zone-offset | GMT+8; GMT+08:00; UTC-08:00 |
X | zone-offset ‘Z’ for zero | Z; -08; -0830; -08:30; -083015; -08:30:15 |
x | zone-offset | +0000; -08; -0830; -08:30; -083015; -08:30:15 |
Z | zone-offset | +0000; -0800; -08:00 |
p | pad next | 1 |
' |
escape for text | |
'' |
single quote | ' |
[ | optional section start | |
] | optional section end |
【1】Class DateTimeFormatter
【2】Java LocalDate
【3】Java DateTimeFormatter
文章浏览阅读331次。第一部分:准备工作1 安装虚拟机2 安装centos73 安装JDK以上三步是准备工作,至此已经完成一台已安装JDK的主机第二部分:准备3台虚拟机以下所有工作最好都在root权限下操作1 克隆上面已经有一台虚拟机了,现在对master进行克隆,克隆出另外2台子机;1.1 进行克隆21.2 下一步1.3 下一步1.4 下一步1.5 根据子机需要,命名和安装路径1.6 ..._创建一个hadoop项目
文章浏览阅读1.7k次。心脏滴血漏洞HeartBleed CVE-2014-0160 是由heartbeat功能引入的,本文从深入码层面的分析该漏洞产生的原因_heartbleed代码分析
文章浏览阅读1.4k次。前言ofd是国家文档标准,其对标的文档格式是pdf。ofd文档是容器格式文件,ofd其实就是压缩包。将ofd文件后缀改为.zip,解压后可看到文件包含的内容。ofd文件分析工具下载:点我下载。ofd文件解压后,可以看到如下内容: 对于xml文件,可以用文本工具查看。但是对于印章文件(Seal.esl)、签名文件(SignedValue.dat)就无法查看其内容了。本人开发一款ofd内容查看器,..._signedvalue.dat
文章浏览阅读1.8w次,点赞29次,收藏313次。整体系统设计本设计主要是对ADC和DAC的使用,主要实现功能流程为:首先通过串口向FPGA发送控制信号,控制DAC芯片tlv5618进行DA装换,转换的数据存在ROM中,转换开始时读取ROM中数据进行读取转换。其次用按键控制adc128s052进行模数转换100次,模数转换数据存储到FIFO中,再从FIFO中读取数据通过串口输出显示在pc上。其整体系统框图如下:图1:FPGA数据采集系统框图从图中可以看出,该系统主要包括9个模块:串口接收模块、按键消抖模块、按键控制模块、ROM模块、D.._基于fpga的信息采集
文章浏览阅读2.5w次。1.背景错误信息:-- [http-nio-9904-exec-5] o.s.c.n.z.filters.post.SendErrorFilter : Error during filteringcom.netflix.zuul.exception.ZuulException: Forwarding error at org.springframework.cloud..._com.netflix.zuul.exception.zuulexception
文章浏览阅读358次。1.介绍图的相关概念 图是由顶点的有穷非空集和一个描述顶点之间关系-边(或者弧)的集合组成。通常,图中的数据元素被称为顶点,顶点间的关系用边表示,图通常用字母G表示,图的顶点通常用字母V表示,所以图可以定义为: G=(V,E)其中,V(G)是图中顶点的有穷非空集合,E(G)是V(G)中顶点的边的有穷集合1.1 无向图:图中任意两个顶点构成的边是没有方向的1.2 有向图:图中..._给定一个邻接矩阵未必能够造出一个图
文章浏览阅读321次。(十二)、WDS服务器安装通过前面的测试我们会发现,每次安装的时候需要加域光盘映像,这是一个比较麻烦的事情,试想一个上万个的公司,你天天带着一个光盘与光驱去给别人装系统,这将是一个多么痛苦的事情啊,有什么方法可以解决这个问题了?答案是肯定的,下面我们就来简单说一下。WDS服务器,它是Windows自带的一个免费的基于系统本身角色的一个功能,它主要提供一种简单、安全的通过网络快速、远程将Window..._doc server2012上通过wds+mdt无人值守部署win11系统.doc
文章浏览阅读219次。python–xlrd/xlwt/xlutilsxlrd只能读取,不能改,支持 xlsx和xls 格式xlwt只能改,不能读xlwt只能保存为.xls格式xlutils能将xlrd.Book转为xlwt.Workbook,从而得以在现有xls的基础上修改数据,并创建一个新的xls,实现修改xlrd打开文件import xlrdexcel=xlrd.open_workbook('E:/test.xlsx') 返回值为xlrd.book.Book对象,不能修改获取sheett_xlutils模块可以读xlsx吗
文章浏览阅读8.2w次,点赞267次,收藏656次。运行Selenium出现'WebDriver' object has no attribute 'find_element_by_id'或AttributeError: 'WebDriver' object has no attribute 'find_element_by_xpath'等定位元素代码错误,是因为selenium更新到了新的版本,以前的一些语法经过改动。..............._unresolved attribute reference 'find_element_by_id' for class 'webdriver
文章浏览阅读198次。一:模态窗口//父页面JSwindow.showModalDialog(ifrmehref, window, 'dialogWidth:550px;dialogHeight:150px;help:no;resizable:no;status:no');//子页面获取父页面DOM对象//window.showModalDialog的DOM对象var v=parentWin..._jquery获取父window下的dom对象
文章浏览阅读1.7w次,点赞15次,收藏129次。算法(algorithm)是解决一系列问题的清晰指令,也就是,能对一定规范的输入,在有限的时间内获得所要求的输出。 简单来说,算法就是解决一个问题的具体方法和步骤。算法是程序的灵 魂。二、算法的特征1.可行性 算法中执行的任何计算步骤都可以分解为基本可执行的操作步,即每个计算步都可以在有限时间里完成(也称之为有效性) 算法的每一步都要有确切的意义,不能有二义性。例如“增加x的值”,并没有说增加多少,计算机就无法执行明确的运算。 _算法
文章浏览阅读1.5k次,点赞18次,收藏26次。网络安全的标准和规范是网络安全领域的重要组成部分。它们为网络安全提供了技术依据,规定了网络安全的技术要求和操作方式,帮助我们构建安全的网络环境。下面,我们将详细介绍一些主要的网络安全标准和规范,以及它们在实际操作中的应用。_网络安全标准规范